如何把国家统计局地区分省年度数据快速整理成省级面板数据

单变量处理

进入国家统计局→统计数据(数据从查询)→地区数据(分省年度数据)下载1999-2018年31省地区生成总值xls格式数据到桌面上,文件名称为:分省年度数据.xls。

cd C:\Users\yjy\OneDrive\桌面 //设置工作路径为桌面
import excel using 分省年度数据.xls, clear  //xls格式数据
*local i =  A[2]
local i =  substr(A[2],10,.)  //提取数据指标:地区生产总值。
dis  "`i'"
keep in 5/35 //保存5-35行数据
renvars B-U \ a2018 a2017 a2016 a2015 a2014 a2013 a2012 a2011 
a2010 a2009 a2008  a2007 a2006 a2005 a2004 a2003 a2002 
a2001 a2000 a1999  //变量重命名
gen id = _n
reshape long a, i(id) j(year)   //把宽数据转为长数据
label variable a "`i'"   //添加标签“地区生产总值”
destring a,replace    //把变量a从字符型转化为数值型
rename A 地区   
save 分省年度数据, replace   //保存数据

多变量处理

进入国家统计局→统计数据(数据从查询)→地区数据(分省年度数据)下载1999-2018年31省7份数据到桌面上,文件名称为:分省年度数据 (1)-(7)。

cd C:\Users\yjy\OneDrive\桌面 //设置工作路径为桌面
forvalues j=1/7{
         import excel using "分省年度数据 (`j').xls", clear
         local i =  substr(A[2],10,.)
         keep in 5/35
         renvars B-U \ a`j'2018 a`j'2017 a`j'2016 a`j'2015 a`j'2014  ///
a`j'2013 a`j'2012 a`j'2011 a`j'2010 a`j'2009 a`j'2008  a`j'2007  ///
a`j'2006 a`j'2005 a`j'2004 a`j'2003 a`j'2002 a`j'2001 a`j'2000  ///
a`j'1999 
         gen id = _n
         reshape long a`j', i(id) j(year)
         label variable a "`i'"
         destring a,replace
        save "分省年度数据 (`j')", replace
   }  
*合并数据
forvalues j=1/7{
         merge 1:1 id year using "分省年度数据 (`j').dta"
        drop _merge
        save "宏观面板数据", replace
   }
*删除单变量数据
 forvalues j=1/7{
          erase "分省年度数据 (`j').dta"
   }
*删除xls原始数据
forvalues j=1/7{
         erase "分省年度数据 (`j').xls"
  }

use 宏观面板数据,clear
rename A 省份
xtset id year
xtreg a1 a2 a3 a4 a5 a6 a7,fe

你可能感兴趣的:(如何把国家统计局地区分省年度数据快速整理成省级面板数据)