我有一个大型数据集,如下所示。我想删除行中少于3个观察值的变量(不是观察/行)。在这种情况下,只需要删除变量X1
。
如果我问一些显而易见的事情,我道歉,但是,此时我并不知道如何继续这样做。
+-----+-----+-----+-----+-----+
| ID | X1 | X2 | X3 | X4 |
+-----+-----+-----+-----+-----+
| 1 | . | 1 | 1 | 2 |
| 2 | . | 2 | 2 | 3 |
| 3 | . | 3 | 1 | . |
| 4 | 1 | . | 3 | 1 |
| 5 | . | 2 | 4 | 3 |
| 6 | 2 | 3 | . | . |
|total| 2 | 5 | 5 | 4 |
+-----+-----+-----+-----+-----+
答案 0 :(得分:3)
我的解释是你要删除至少有3个缺失值的变量。
您可以使用来自SSC(nmissing
)的ssc install nmissing
:
clear
set more off
input ///
x y z
. . 5
. 6 8
4 . 9
. . 1
5 . .
end
list
nmissing, min(3)
drop `r(varlist)'
如果我的解释不正确,请检查help
和nmissing
的{{1}}。语法足够灵活。
重新解释。您希望删除不具有至少3个非缺失值的变量:
npresent