r - R 排除统计数据中的异常值
问题描述
我有鸟类的数据,我正在比较多年来和彼此之间的翅膀长度和重量。我注意到从振铃站收到的一些数据包含不准确的输入。例如,对于某个物种,机翼长度在 40-60 毫米之间,但是在 578 毫米处有一个异常值,这一定是输入错误的结果。是否可以从数据集中排除这些极端异常值?
解决方案
您有 2 个选项:
- 完全删除异常值。
max_believable_value=100
mydata = mydata[ mydata>max_believable_value ]
这通常不是很令人满意,首先因为它会“无形地”删除它们,因此您不会注意到是否系统地发生了更严重的事情,其次因为它会改变数据的形式。如果您有 100 个样本,并且特定样本的一个观察值被认为是“异常值”,但其他的都可以,那么您可能不想完全删除整个样本。
- 将异常值标记为“NA”。
mydata[ mydata>max_believable_value ] = NA
这正是“NA”值的含义(“不可用”值),并且大多数 R 函数包含允许您指定如何处理 NA 值的选项(包括通过删除它们!)。
这种方法清楚地表明您有多少“异常值”(或其他可疑值),并且即使一个或多个观察结果看起来无效,您也可以将样本保留在数据中。
推荐阅读
- python - numpy.einsum 表达式的含义/等价物
- sql - FusionAuth批量用户创建给出SQL超时错误
- angular - 以角度放置和获取一个 URL 的请求,该 URL 不起作用:不支持请求方法“PUT””
- typescript - 在从节点(打字稿)部署 Azure 函数后禁用 timerTrigger 以进行测试
- r - 使用 map 函数时,如何获取要迭代的变量的名称?
- java - 查找总和等于给定值的子数组的计数
- ios - Firebase 延迟深度链接和 Facebook 广告
- python - 有没有办法将 pygame.display.update 添加到缩进循环
- javascript - 使用单例设计模式获得更好的代码质量
- javascript - 输入字段的className选择器应该如何改变iside的值?