R聚类分析自动删除异常值

R聚类分析自动删除异常值,r,cluster-analysis,outliers,R,Cluster Analysis,Outliers,如何在R中编写代码以复制在SAS中完成的涉及 method=Ward和TRIM=10选项自动删除10%的异常值?这个数据集有45个变量,每个变量都有一些异常值响应 当我使用Ward的方法搜索R聚类分析时,trim选项被描述为缩短名称,而不是删除异常值 如果在进行聚类分析之前我不整理数据集,就会出现一个大的聚类,其中有许多代表边缘个体的单案例聚类。随着外围10%的病例被自动删除,出现了3或4个有意义的集群。有太多的变量和案例,我无法逐个删除异常值 谢谢 您尚未提供有关如何识别异常值的任何信息。假设

如何在R中编写代码以复制在SAS中完成的涉及 method=Ward和TRIM=10选项自动删除10%的异常值?这个数据集有45个变量,每个变量都有一些异常值响应

当我使用Ward的方法搜索R聚类分析时,trim选项被描述为缩短名称,而不是删除异常值

如果在进行聚类分析之前我不整理数据集,就会出现一个大的聚类,其中有许多代表边缘个体的单案例聚类。随着外围10%的病例被自动删除,出现了3或4个有意义的集群。有太多的变量和案例,我无法逐个删除异常值


谢谢

您尚未提供有关如何识别异常值的任何信息。假设最简单的情况是删除每个变量的顶部和底部5%的情况,即逐个变量,您可以使用函数来实现这一点

使用上面链接中的示例,您可以执行以下操作:

duration = faithful$eruptions
duration[duration <= quantile(duration,0.95) & duration > quantile(duration,0.05)]

谢谢你的见解。这里的一个问题是,异常值的自动SAS修剪似乎是一个黑匣子,因此复制它是一个谜。看来未来最好的办法是明确说明异常值是如何识别和删除的。@TomSLC当然,这可能是专有软件的问题,尽管有时可以通过阅读手册获得一些见解。阅读on TRIM函数,似乎涉及到一个更复杂的过程,但我没能理解它是什么。@TomSLC另外,如果您觉得我已经回答了您的问题,请随意回答。