2013-08-05 92 views
1

我有一个数据集并希望在一端丢弃1%的数据。例如,我有3000个观测值,我想放弃30个最高值。有没有这种修剪的命令?顺便说一句,我是Stata新手。在Stata中修剪数据

+0

只是为了指出什么应该是显而易见的:许多统计人员认为这种数据丢失是一个坏主意。一个相关但不同的点是,这不是在例如修剪手段,其中极值被忽略,但不被删除。 'trimmean'(SSC)是用户编写的Stata实现。 –

回答

1

您可以在Stata中使用_pctile

sysuse auto, clear 
_pctile weight, nq(100) 
return list #this is optional 
drop if weight>r(r99) #top 1 percent 
1

如果你知道你可以使用什么截止是你降:

drop if var1>300 

其下降与var1超过300

您可以使用summarize var1, detail拿到钥匙百分所有行:它会给你1%和99%的百分点以及其他标准百分位数。

0

要在Stata选择30个观测,请使用以下命令:

keep if (_n<=30) 

为了跌幅居前30的意见在Stata,请使用以下命令

keep if (_n>30) 
+0

这是一个误导,作为一个答案,没有解释说你必须先排序并分别处理缺失的值。 –