【问题标题】:Making a data frame of only outliers of a large data set制作仅包含大型数据集异常值的数据框
【发布时间】:2014-03-23 14:28:07
【问题描述】:

我没有尝试从数据集中删除异常值,而是尝试创建一个新数据框,该数据框仅包含其中包含异常值的行。

我能够将不同组的平均值和标准差列绑定到数据集的末尾。现在,我已经尝试使用此代码生成异常数据表:

Outliers <- Sample[((Sample$x - Sample$Averages)/Sample$StDevs) > 2.00,]

此过程会运行,但会为异常值生成一个空表。我从数据中测试了一些单独的值,以确保存在异常值,并且确实存在。如果我指定一行,上面的计算确实会产生一个布尔参数。当我尝试在表格中收集这些异常值时,我遇到了问题。我也尝试将异常值初始化为 data.frame 或 data.table,但在这里也没有成功(可能只是因为我是 R 新手)。

例如: 当我跑步时

((Sample$x[3] - Sample$Averages[3])/Sample$StDevs[3]) > 2

它返回 TRUE。这很好。那么,当我只想保留 Sample 中满足此条件的所有内容时,为什么会得到一个空的异常值表?我不觉得这应该是一个难题,但我这辈子都做不到。

有什么建议吗?提前致谢!

【问题讨论】:

  • 除非您发布str(Sample) 的结果,否则我们无法确定您的错误可能是什么来源。发布更多代码和数据。
  • 所有数据都是私有的。但是,我将添加一个编辑以尝试进一步解释我的尝试。
  • 也许我的问题的最简单版本是:如何在不知道最终将拥有多少行的情况下初始化数据框(它将与“样本”具有相同数量的列)。
  • Sample[ 0, ] 应该为您提供一个没有行和相同列名的空数据框
  • 我不知道如何关闭这个网站上的问题,但是为了给大家省去不必要的麻烦,我的问题已经解决了。谢谢大家的意见!

标签: r dataframe outliers


【解决方案1】:

Sample[ 0, ] 应该会为您提供一个没有行且列名相同的空数据框。

【讨论】:

    猜你喜欢
    • 2015-06-21
    • 2020-10-31
    • 2020-02-08
    • 2020-07-12
    • 2019-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-27
    相关资源
    最近更新 更多