【问题标题】:Subsetting rows in R generates mysterious NA row [Version 2.0]R中的子集行生成神秘的NA行[2.0版]
【发布时间】:2015-08-28 03:56:33
【问题描述】:

关于类似的事情有几个问题,例如

Subsetting R data frame results in mysterious NA rows

但是他们没有回答我的问题,因为(1)我不明白这整个“如果您的代码类似于此示例(形式为 d[d$v == x, ],那么您的问题确实是几乎可以肯定,您的专栏中有 NA。”因为下面的示例表明情况并非如此。

对于例如:

iris
gsub(1.8, NA, iris$Petal.Width)
iris[iris$Petal.Width == 2.0,]

生成

  Sepal.Length Sepal.Width Petal.Length Petal.Width   Species
111          6.5         3.2          5.1           2 virginica
114          5.7         2.5          5.0           2 virginica
122          5.6         2.8          4.9           2 virginica
123          7.7         2.8          6.7           2 virginica
132          7.9         3.8          6.4           2 virginica
148          6.5         3.0          5.2           2 virginica

尽管引用列中有大量 NA,但显然没有出现神秘的 NA 行

我的问题是我目前正在以 df[df$var==x,] 的形式进行子集化 - 但是目前这样做是每次在表单中给我一个 NA 行:

NA   NA  <NA> <NA> <NA>     <NA>            <NA> <NA> <NA>  NA 

我会给出一个实际可重现的例子 - 但是电子表格是保密的。

【问题讨论】:

  • 我已经删除了带有 NA 的行,这个问题仍然存在
  • 试试iris[with(iris, Petal.Width==2 &amp; !is.na(Petal.Width)),]

标签: r


【解决方案1】:

使用您的示例(没有显示任何 NA,因为您忘记重新分配变量):

iris
iris$Petal.Width <- gsub(1.8, NA, iris$Petal.Width)
iris[!is.na(iris$Petal.Width) & iris$Petal.Width == 2.0,]

这也有效:

iris[complete.cases(iris$Petal.Width) & iris$Petal.Width== 2 ,]

给出以下输出:

    Sepal.Length Sepal.Width Petal.Length Petal.Width   Species
111          6.5         3.2          5.1           2 virginica
114          5.7         2.5          5.0           2 virginica
122          5.6         2.8          4.9           2 virginica
123          7.7         2.8          6.7           2 virginica
132          7.9         3.8          6.4           2 virginica
148          6.5         3.0          5.2           2 virginica

阅读这些链接作为 R 中 NA 的介绍: http://www.statmethods.net/input/missingdata.html http://www.ats.ucla.edu/stat/r/faq/missing.htm

【讨论】:

  • 我的错。完全忘记了 complete.cases() 并简单地使用 =="NA" 进行搜索。感谢您的帮助
  • 没问题,但是请阅读关于 NA 的信息,它们需要与 R 中的其他值非常不同的处理方式
猜你喜欢
  • 2012-12-25
  • 2019-06-12
  • 2021-03-24
  • 2018-05-25
  • 2021-03-08
  • 2018-11-24
相关资源
最近更新 更多