一个因子的 addNA 之后的子集数据帧
Subset dataframe after addNA of an factor
我有一个带有连续变量 x 和分组因子的数据框。出于某种原因,我需要添加 NA
作为因子水平。结果,数据为:
df <- data.frame(x= 1:4, group= factor(c(NA, 1, 1, 2)))
df$group <- addNA(df$group)
现在如何为 NA
值对“组”变量中的数据进行子集化?我尝试过:
df[df$group == "NA", ]
df[df$group == "<NA>", ]
df[is.na(df$group), ]
df[df$group == levels(df$group)[3], ]
我的预期输出包含 df$group
具有因子水平 NA
的所有行,即 data.frame(x= 1:4, group= factor(c(NA, 1, 1, 2)))[1, ]
。
我确实需要添加 NA
作为因子级别,因为它在我的情况下非常方便(请参阅 了解它有用的一种情况)。
你可以试试这个方法:
df[is.na(as.character(df$group)),]
x group
1 <NA>
在查找 na 值之前将变量移动到字符
我有一个带有连续变量 x 和分组因子的数据框。出于某种原因,我需要添加 NA
作为因子水平。结果,数据为:
df <- data.frame(x= 1:4, group= factor(c(NA, 1, 1, 2)))
df$group <- addNA(df$group)
现在如何为 NA
值对“组”变量中的数据进行子集化?我尝试过:
df[df$group == "NA", ]
df[df$group == "<NA>", ]
df[is.na(df$group), ]
df[df$group == levels(df$group)[3], ]
我的预期输出包含 df$group
具有因子水平 NA
的所有行,即 data.frame(x= 1:4, group= factor(c(NA, 1, 1, 2)))[1, ]
。
我确实需要添加 NA
作为因子级别,因为它在我的情况下非常方便(请参阅
你可以试试这个方法:
df[is.na(as.character(df$group)),]
x group
1 <NA>
在查找 na 值之前将变量移动到字符