美文网首页数据处理思路
如何把国家统计局地区分省年度数据快速整理成省级面板数据

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

作者: 松柏林stata | 来源:发表于2020-04-24 11:26 被阅读0次

    单变量处理

    进入国家统计局→统计数据(数据从查询)→地区数据(分省年度数据)下载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
    

    相关文章

      网友评论

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

        本文链接:https://www.haomeiwen.com/subject/avvxwhtx.html