0

我有一个带有数字和 NA 元素的向量。例如,

data<-c(.4, -1, 1, NA, 8, NA, -.4)
data[complete.cases(data), ]

但是有什么功能可以将它们分成不同的向量,以便我可以使用箱线图和 ECDF 等图表来比较它们?

4

1 回答 1

4

目前尚不清楚您要解决什么问题。complete.cases为选择创建一个逻辑向量(如果您正确使用它。)您可以否定它以获取其他向量。您无法像尝试那样处理向量,[ , ]但如果“数据”是可以工作的数据框(或矩阵)。

data<-c(.4, -1, 1, NA, 8, NA, -.4)
data[complete.cases(data) ]
#[1]  0.4 -1.0  1.0  8.0 -0.4
data[!complete.cases(data) ]
#[1] NA NA

如果尝试选择非 NA 项目,则可能更容易将其!is.na(data)用作选择向量。这是一个测试用例,显示它适用于矩阵以及 data.frames:

> dat <- matrix( sample(c(1,2,NA), 12, rep=TRUE), 3)
> dat
     [,1] [,2] [,3] [,4]
[1,]    1    1    1    1
[2,]   NA   NA    2    2
[3,]    1   NA    2    1
> dat[ complete.cases(dat), ]
[1] 1 1 1 1
> dat[ ! complete.cases(dat), ]
     [,1] [,2] [,3] [,4]
[1,]   NA   NA    2    2
[2,]    1   NA    2    1
于 2013-02-25T06:23:02.270 回答