我有这个数据库:
每个n_person
值都有一个表,即它有6个值。
我如何使用Stata绘制这样的图形,或者至少是趋势图(EU-28的每个n_person
都有一个趋势)?
答案 0 :(得分:1)
如果您拥有在Stata中使用的相应格式的数据,这非常简单。我还假设EU-28指的是欧盟成员国,并且您只是为这些国家导入数据。
一种方法要求您使用类似于以下内容的格式获取数据:
clear
input str14 geo float(n_persons y2003 y2004 y2005 y2006)
"EUROPEAN 1" 1 62.8377 55.67838 10.905416 35.7592
"EUROPEAN 1" 2 89.53723 71.52719 64.209915 52.47816
"EUROPEAN 1" 3 48.54506 25.441277 51.37198 62.80811
"France" 1 73.91482 36.291607 45.30386 96.40535
"France" 2 54.1567 37.34917 14.375256 21.987514
"France" 3 8.714808 27.92006 54.03687 33.06909
"Germany" 1 38.40068 83.15063 93.3116 59.52254
"Germany" 2 4.605487 97.11422 86.09 10.07262
"Germany" 3 80.91199 77.67971 66.32325 65.57188
"Italy" 1 41.21684 64.3114 9.55155 1.481899
"Italy" 2 50.49801 38.33295 54.57179 37.95589
"Italy" 3 36.950104 .5723338 72.56517 10.015277
"Ireland" 1 29.08498 87.72233 77.70287 3.073141
"Ireland" 2 41.4847 65.26399 52.67126 83.00031
"Ireland" 3 19.666344 20.33027 31.33509 8.294784
"Greece" 1 97.63668 63.63281 15.918014 91.36884
"Greece" 2 19.696716 36.602695 54.15702 56.83243
"Greece" 3 28.321335 86.37221 .8757827 17.157194
end
使用如上格式化的数据,您可以执行以下操作:
reshape long y, i(geo n_persons) j(year)
reshape wide y, i(geo year) j(n_persons)
rename (y1 y2 y3) (persons1 persons2 persons3)
有效地转置您的数据并重命名变量,以便变量是1到n个人家庭中人员的度量(每个家庭规模的一个变量),观察结果代表国家 - 年份对(变量命名约定取决于您)。
之后,你可以玩:
graph bar persons1 persons2 persons3, over(year) stack
生成条形图。
有关详情,请参阅help reshape
和help graph bar
。