Stata

stata命令介绍collapse :分组统计数据

2021-01-21  本文已影响0人  松柏林stata

含义描述

collapse 将变量数据转换为均值、和、中位数等等。clist 必须为数字变量。

语法与选项

  collapse clist [if] [in] [weight] [, options]

where clist is either

    [(stat)] varlist [ [(stat)] ... ]
    [(stat)] target_var=varname [target_var=varname ...] [ [(stat)] ...]

or any combination of the varlist or target_var forms, and stat is one of

    mean         means (default)    //默认为均值
    median       medians         //中位数
    p1           1st percentile
    p2           2nd percentile
    ...          3rd-49th percentiles
    p50          50th percentile (same as median)    //第50分位点
    ...          51st-97th percentiles
    p98          98th percentile
    p99          99th percentile
    sd           standard deviations   //标准差
    semean       standard error of the mean (sd/sqrt(n))   //平均值的标准误
    sebinomial   standard error of the mean, binomial (sqrt(p(1-p)/n)) 
    sepoisson    standard error of the mean, Poisson (sqrt(mean))
    sum          sums       //求和                                                                                   
    rawsum       sums, ignoring optionally specified weight except observations with a weight of zero are excluded
    count        number of nonmissing observations   //非缺失观测数
    percent      percentage of nonmissing observations   //非缺失观测数百分比
    max          maximums              //最大值
    min          minimums              //最小值
    iqr          interquartile range   //四分位范围
    first        first value               // 第一个值
    last         last value             //最后一个值
    firstnm      first nonmissing value    //第一个非缺失值
    lastnm       last nonmissing value   //最后一个非缺失值

如果未指定stat,则假定为平均值。  means (default)
选项 功能
by(varlist) 用来按某变量分类计算统计量的值。可以是一个,也可以是多个。
cw 删除含有缺失值的观测值。
fast) 如果用户按Break键,则不要还原原始数据集;编程时用的命令,一般人不使用,可以忽视。

例子

 use https://www.stata-press.com/data/r16/college,clear
 list, sep(4)
图1

统计出每个年级的平均绩点(gap)

collapse (mean) gpa , by(year) 
list
图2

统计出每个年级的平均绩点(gap),并命名为mean_gpa

use https://www.stata-press.com/data/r16/college,clear
collapse (mean) mean_gpa=gpa, by(year)
list 
图3

统计出每个年级的平均绩点(gap)与学习时间(hour)

use https://www.stata-press.com/data/r16/college,clear
collapse (mean) gpa hour, by(year)
list 
图4

这里考虑权重,权重等于年级人数 [fw=number]。collapse 允许四种权重类型;默认值为aweights。权重标准化只影响总和、计数、方差,标准误和 sebinomia l统计。

use https://www.stata-press.com/data/r16/college,clear
collapse (mean) gpa [fw=number], by(year)
list
图5

当变量中存在缺失值时,使用cw选项会将存在缺失值的该行观测值全部删除,因此得到的统计量的值均为删除这些行以后计算得到的;若不使用该选项,则只影响含有缺失值的变量的统计量。仍以college数据为例,我们将2-4行的gpa数据替换为缺失值:

use https://www.stata-press.com/data/r16/college,clear
replace gpa= . in 2/4
list in 1/5
图6

而后对gpa和hour按年级求均值,首先来看一下不使用cw选项时的结果,程序如下:

collapse (mean) gpa hour , by(year)
list
图7

对比前面没有缺失值时所得的均值,由于2-4行均属于一年级,因而在以年级分类计算均值时,只有一年级的gpa受到了影响,hour的均值与前面一致。如果使用cw选项:

use https://www.stata-press.com/data/r16/college,clear
replace gpa= . in 2/4
collapse (mean) gpa hour, by(year) cw
list
图8

使用cw后,由于一年级的数据只剩下第一行,其余行全部删掉,因而一年级的hour变量的均值也发生了变化,在计算时只对原数据的第一行进行了平均。

参考资料:
本文的例子来源于微信公众号:Stata and Python数据分析
利用collapse命令转化原始数据

上一篇下一篇

猜你喜欢

热点阅读