0

在一个复杂的数据框中,我有一个包含我想排除的净召回工资的 NA 列,以及一个包含 1992 年至 2010 年进行研究的年份的列,或多或少像这样:

q32 pgssyear
2000 1992
1000 1992
NA   1992
3000 1994
etc.

如果我尝试绘制如下箱线图:

boxplot(dataset$q32~pgssyear,data=dataset, main="Recalled Net Salary per Month (PLN)",
    xlab="Year", ylab="Net Salary") 

它似乎有效,但是 NA 可能会扭曲计算,所以我想摆脱它们:

boxplot(na.omit(dataset$q32)~pgssyear,data=dataset, main="Recalled Net Salary per Month (PLN)",
    xlab="Year", ylab="Net Salary") 

然后我收到一条警告消息,指出 pgsyear 和 q32 的长度不匹配,很可能是因为我从 q32 中删除了 NA,所以我尝试缩短 pgsyear,使其不包括与 q32 列中的 NA 对应的行:

   pgssyearprim <- subset(dataset$pgssyear, dataset$q32!= NA )

然而,然后 pgsyearprim 被视为一个因子变量:

pgssyearprim
factor(0)       

如果我将它引入箱线图公式,我会收到相同的警告消息......

Levels: 1992 1993 1994 1995 1997 1999 2002 2005 2008 2010
4

1 回答 1

0

他们当然不会……你只从 LHS 中删除了一些数据na.omit(dataset$q32)~pgssyear。而是!is.na(dataset$q32)用作子集参数

于 2014-11-16T01:26:00.663 回答