【发布时间】:2019-09-22 20:51:30
【问题描述】:
我正在尝试过滤 wooldridge 数据集 gpa1 所以 job19 只显示满足 19 小时的观察结果。我运行了命令
library(wooldridge)
filter(gpa1, job19 == 1)
查看job19 == 1 的所有实例,所有观察结果都显示为NA。有谁知道为什么会这样?我事先查看了gpa1 变量,而job19 是一个虚拟变量,因此所有观察结果都列为1 或0,所以我应该有一些结果,对吧?我还尝试过滤掉job19 == 0 的实例,但我得到了相同的结果。
【问题讨论】:
-
你能贴出所有代码吗? Filter() 是多个包中的一个函数。您可能想检查您正在使用哪个版本的过滤器,或者(甚至更好)质量,例如stats::filter() 或 dplyr::filter()
-
使用
dplyr::filter(gpa1, job19 == 1)我无法重现任何错误。投票结束,因为离题/不可复制。 -
akrun,“列的类”是什么意思?我运行了你建议的代码,它说job19的观察结果都是整数,你指的是这个吗?
-
Jeremy Miles,我在尝试运行 dplyr::filter() 代码时出错,并且 stats::filter() 代码再次生成了所有 NA,不过感谢您的建议!
-
我认为 JeremyMiles 是对的。