2016-11-19 32 views
0

我正在使用Stata创建一个表格,用重量来概括观察数据。假设我有以下数据集在Stata中创建一个带重量的表格

Gender Education Weights 
    1  2  1.2 
    1  1  0.5 
    2  2  3.0 
    2  2  1.3 

,我想创建由下表第三列中的相应条目加权观测的数量

  Education1 Education2 
Gender1   0.5   1.2 
Gender2   0   4.3 

所以我总结。例如,Gender2Education2,我有两个意见,他们分别具有权重3.0和1.3。结果,我只是计算1.3 * 1 + 3.0 * 1 = 4.3。

Stata有没有简单的方法来创建这样的表格?只要数字条目正确,行名和列名就不重要。

回答

0

您应该使用collapse以任何您想要的方式缩小数据集。 在您的例子

#create the weighted observations 
gen full_obs = education * weights 

#aggregate 
collapse (sum) education = full_obs, by(gender) 

,然后在需要时您可以reshape您的数据。

+0

这不是我想要的。此代码创建一个单向表。 – Daniel

+0

重塑它,bro –

+0

我没有看到根本就不需要对数据集进行任何重组。这是一个稍微不规范的制表问题。 –

0

你试过什么代码?在这个和其他问题中,由于研究不充分(意思是不研究标准文档)并且没有解释你的代码尝试,你没有达到预期的标准。

. clear 

. input Gender Education Weights 

     Gender Education Weights 
    1. 1  2  1.2 
    2. 1  1  0.5 
    3. 2  2  3.0 
    4. 2  2  1.3 
    5. end 

. tab Gender Education [iw=Weights] 

      |  Education 
    Gender |   1   2 |  Total 
-----------+----------------------+---------- 
     1 |  .5  1.2 |  1.7 
     2 |   0  4.3 |  4.3 
-----------+----------------------+---------- 
    Total |  .5  5.5 |   6 
相关问题