紫影基地

 找回密码
 立即注册
查看: 296|回复: 0

如何利用stata一键实现把国家统计局地区分省年度数据快速整理成省级面板数

[复制链接]
阅读字号:

598

主题

635

帖子

9069

积分

审核员

Rank: 7Rank: 7Rank: 7

积分
9069
发表于 2021-10-23 20:48:19 | 显示全部楼层 |阅读模式
本帖最后由 moonstar 于 2021-10-23 20:52 编辑

之前发文介绍了《如何把国家统计局地区分省年度数据快速整理成省级面板数据》。虽然能实现快速把国家统计局地区分省年度数据快速整理成省级面板数据,但是实际操作中仍然需要修改一些指令。下面的代码能够一键实现把国家统计局地区分省年度数据快速整理成省级面板数据。
进入国家统计局→统计数据(数据从查询)→地区数据(分省年度数据)下载分省数据到文件夹。

205101f3ff212pfft98205.png

运行一下以下代码能:
  1. cd D:\科研数据\统计局数据\新建文件夹   //数据所在文件夹
  2.   local files: dir "." files "*.xls",respectcase  
  3.   local f =1
  4.   foreach t in `files' {
  5.     local b =  subinstr("`t'",".xls","",.)            
  6.     import excel using "`t'", clear            
  7.     local i =  substr(A[2],10,.)                    
  8.       drop A
  9.       ds
  10.       foreach j in `r(varlist)'{                  
  11.         replace `j'="a`f'"+substr(`j',1,4) in 4
  12.       }
  13.       foreach l in `r(varlist)'{                 
  14.         local k =`l'[4]
  15.         rename `l' `k'
  16.       }
  17.     keep in 5/35
  18.     gen id = _n
  19.     reshape long  a`f', i(id) j(year)
  20.     label variable a`f' `"`i'"'
  21.     destring a`f',replace
  22.     save "`b'", replace
  23.     local f=`f'+1
  24. }

  25. *合并数据
  26.   local files: dir "." files "*.dta",respectcase
  27.   dis `files'
  28.   foreach j in `files' {
  29.     cap merge 1:1 id year using "`j'"
  30.     cap drop _merge      
  31.   }
  32.   gen 省份=""
  33.   replace 省份 = "北京市" if id==1
  34.   replace 省份 = "天津市" if id==2
  35.   replace 省份 = "河北省" if id==3
  36.   replace 省份 = "山西省" if id==4
  37.   replace 省份 = "内蒙古自治区" if id==5
  38.   replace 省份 = "辽宁省" if id==6
  39.   replace 省份 = "吉林省" if id==7
  40.   replace 省份 = "黑龙江省" if id==8
  41.   replace 省份 = "上海市" if id==9
  42.   replace 省份 = "江苏省" if id==10
  43.   replace 省份 = "浙江省" if id==11
  44.   replace 省份 = "安徽省" if id==12
  45.   replace 省份 = "福建省" if id==13
  46.   replace 省份 = "江西省" if id==14
  47.   replace 省份 = "山东省" if id==15
  48.   replace 省份 = "河南省" if id==16
  49.   replace 省份 = "湖北省" if id==17
  50.   replace 省份 = "湖南省" if id==18
  51.   replace 省份 = "广东省" if id==19
  52.   replace 省份 = "广西壮族自治区" if id==20
  53.   replace 省份 = "海南省" if id==21
  54.   replace 省份 = "重庆市" if id==22
  55.   replace 省份 = "四川省" if id==23
  56.   replace 省份 = "贵州省" if id==24
  57.   replace 省份 = "云南省" if id==25
  58.   replace 省份 = "西藏自治区" if id==26
  59.   replace 省份 = "陕西省" if id==27
  60.   replace 省份 = "甘肃省" if id==28
  61.   replace 省份 = "青海省" if id==29
  62.   replace 省份 = "宁夏回族自治区" if id==30
  63.   replace 省份 = "新疆维吾尔自治区" if id==31   
  64.   order 省份 id year
  65. *删除单变量数据
  66.   foreach j in `files' {
  67.     erase "`j'"
  68.    }
复制代码


205103om33219m323g99ad.png

来源:https://www.jianshu.com/p/5cca1a2edc1c
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
天之所衡,道之所倚
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|紫影基地

GMT+8, 2025-1-12 12:05 , Processed in 0.106257 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表