根据Stata中丢失的计数删除列/变量

时间:2015-08-16 16:40:28

标签: stata

我有一个大型数据集,如下所示。我想删除行中少于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  |   
+-----+-----+-----+-----+-----+

1 个答案:

答案 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)'

如果我的解释不正确,请检查helpnmissing的{​​{1}}。语法足够灵活。

修改

重新解释。您希望删除不具有至少3个非缺失值的变量:

npresent