繁体   English   中英

计数数据帧中的非NA条目时出错

[英]Error counting non-NA entries in dataframe

我正在尝试查看有关案件的信息量是否与用户的持续时间相关。

目前,我有一个数据框df,并且尝试执行以下操作:

df["amount_known"] <-df[rowSums(!is.na(df)),]

这导致以下错误:

[<-.data.frame*tmp* ,“ amount_known”,value = list(status = c(3L,:替换元素1有808047行,需要808247,

是什么导致这种情况发生的(当然,我该如何解决)?

如果要在df中的新列amount_known中获得非NA条目的数量,可以这样操作:

df$amount_known <-rowSums(!is.na(df))

这是正在发生的事情的一个小例子:

df <- data.frame(x = 1:3, y = 66:68)
df$y[1] <- NA
df$x[3] <- NA

df
#   x  y
#1  1 NA
#2  2 67
#3 NA 68

rowSums(!is.na(df))
#[1] 1 2 1

这将产生一个向量,其中的非NA数为df。

现在,如果你这样做

df[rowSums(!is.na(df)),]

这将从df中选择向量c(1,2,1)的行:

#    x  y
#1   1 NA
#2   2 67
#1.1 1 NA

因此,例如,第1行显示两次。

然后在您的代码中,将输出分配到df的新列。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM