在Stata上将Panel数据从宽格式重整为长格式

问题描述

我要转换以下数据为长格式。

year    pillars Albania Algeria Angola  Argentina   Armenia
2007    11th pillar: Business sophistication    3.6597311   3.0576515       3.4918021   3.5915523
2007    1st pillar: Institutions    2.5269075   4.2349405       4.8290871   2.4191433
2007    8th pillar: Financial market development    3.1519065   3.3876948       4.2213437   3.3508933
2007    10th pillar: Market size    4.1176545   3.6155731       3.4919841   4.5409658
2007    3rd pillar: Macroeconomic environment   2.0992993   2.9498665       2.9116902   2.8697405
2007    6th pillar: Goods market efficiency 4.6865753   6.4130034       4.9136432   4.9837896
2007    7th pillar: Labor market efficiency 5.4585795   5.4442673       5.6051684   4.959185
2007    2nd pillar: Infrastructure  3.3452073   3.263606        3.9682149   3.2552587
2007    12th pillar: Innovation 2.9956383   2.5408542       2.9645087   2.55345
2007    4th pillar: Health and primary education    3.1417448   3.8764841       2.9889512   3.4001686
2007    9th pillar: Technological readiness 3.5059683   3.8649718       3.5275836   3.7134801
2007    5th pillar: Higher education and training   2.0516761   2.9958828       3.0272646   2.8476234
2008    6th pillar: Goods market efficiency 4.5599721   6.0840204       5.0546257   4.7323749
2008    8th pillar: Financial market development    3.3970137   3.2761169       4.1375279   3.4260495
2008    4th pillar: Health and primary education    3.3231335   3.4470269       2.9351999   3.4970362
2008    2nd pillar: Infrastructure  3.2702241   3.0345199       3.991308    3.2979792
2008    11th pillar: Business sophistication    3.6998688   2.9421291       3.4639852   3.6817465
2008    1st pillar: Institutions    2.6627262   4.1702126       4.7674605   2.4751191
2008    12th pillar: Innovation 2.8907774   2.5225983       3.1894787   2.5565684
2008    3rd pillar: Macroeconomic environment   2.2182377   2.6554869       2.8689172   2.7673965
2008    9th pillar: Technological readiness 3.6122833   3.5180317       3.5546848   3.7479288
2008    10th pillar: Market size    4.3590407   3.3022641       3.4714751   4.5656952
2008    5th pillar: Higher education and training   2.2175048   2.9590652       2.9159996   2.8734283
2008    7th pillar: Labor market efficiency 5.4704289   5.3445615       5.5795324   5.0555898
2009    2nd pillar: Infrastructure  3.3707739   3.1260049       3.9369082   3.3472921
2009    4th pillar: Health and primary education    3.6190447   3.200171        2.9427627   3.4927499
2009    8th pillar: Financial market development    3.5542132   3.2977487       4.2010233   3.4639264
2009    7th pillar: Labor market efficiency 5.4790325   5.2768175       5.5368148   5.0000323
2009    3rd pillar: Macroeconomic environment   2.4299682   2.6385734       2.9480703   2.7106974

我尝试过

rename (Albania*) _=

reshape long _,i(year) j(cname) string

我的目标是将数据重塑到

year Country 1st Pillar 2nd Pillar
2007 Albania 2.6627262 ..........
2008 Afghanistan 3.4627262 ......
2009 Rwanda 2.87527262 ........

请帮助

解决方法

有点混乱,例如标头表示变量Armenia,但没有这样的值。

有关如何显示数据示例的详细信息,请参见Stata标记Wiki。

通配符Albania*Albania之外不会捕获其他任何内容。

1st Pillar不是合法的变量名称。

下面举例说明一些技术。

* Example generated by -dataex-. To install: ssc install dataex
clear
input float year str41 pillar float(Albania Algeria Angola Argentina Armenia)
2007 "11th pillar: Business sophistication"       3.659731 3.0576515  3.491802  3.591552  3.591552
2007 "1st pillar: Institutions"                  2.5269074 4.2349405  4.829087  2.419143  2.419143
2007 "8th pillar: Financial market development"  3.1519065  3.387695 4.2213435  3.350893  3.350893
2007 "10th pillar: Market size"                  4.1176543  3.615573  3.491984  4.540966  4.540966
2007 "3rd pillar: Macroeconomic environment"     2.0992992 2.9498665   2.91169 2.8697405 2.8697405
2007 "6th pillar: Goods market efficiency"       4.6865754  6.413003  4.913643  4.983789  4.983789
2007 "7th pillar: Labor market efficiency"         5.45858  5.444267  5.605168  4.959185  4.959185
2007 "2nd pillar: Infrastructure"                 3.345207  3.263606  3.968215  3.255259  3.255259
2007 "12th pillar: Innovation"                   2.9956384  2.540854  2.964509   2.55345   2.55345
2007 "4th pillar: Health and primary education"   3.141745  3.876484  2.988951  3.400169  3.400169
2007 "9th pillar: Technological readiness"        3.505968  3.864972 3.5275836   3.71348   3.71348
2007 "5th pillar: Higher education and training"  2.051676  2.995883 3.0272646  2.847623  2.847623
2008 "6th pillar: Goods market efficiency"       4.5599723  6.084021  5.054626 4.7323747 4.7323747
end

gen col = word(pillar,1)
destring col,ignore("`c(alpha)'") replace 

ds year pillar col,not 
rename (`r(varlist)') Y= 

replace pillar = substr(pillar,strpos(pillar,":") + 2,.)

gen long obs = _n 
su col,meanonly 
local max = r(max)
forval j = 1/`max' { 
    su obs if col == `j',meanonly 
    local label`j' = pillar[r(min)]
}

drop obs pillar 

reshape long Y,i(year col) j(where) string 

reshape wide Y,i(year where) j(col) 

forval j = 1/`max' { 
    label var Y`j' "`label`j''"
}

describe 

order year where 

list year-Y4 

     +--------------------------------------------------------------+
     | year       where         Y1         Y2         Y3         Y4 |
     |--------------------------------------------------------------|
  1. | 2007     Albania   2.526907   3.345207   2.099299   3.141745 |
  2. | 2007     Algeria   4.234941   3.263606   2.949867   3.876484 |
  3. | 2007      Angola   4.829087   3.968215    2.91169   2.988951 |
  4. | 2007   Argentina   2.419143   3.255259    2.86974   3.400169 |
  5. | 2007     Armenia   2.419143   3.255259    2.86974   3.400169 |
     |--------------------------------------------------------------|
  6. | 2008     Albania          .          .          .          . |
  7. | 2008     Algeria          .          .          .          . |
  8. | 2008      Angola          .          .          .          . |
  9. | 2008   Argentina          .          .          .          . |
 10. | 2008     Armenia          .          .          .          . |
     +--------------------------------------------------------------+

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...