CLDS数据转码方法「STATA闪退问题」

导言:利用CLDS2011-2018构建面板,进行数据分析时,发现部分年份dta通过unicode无法转码,并且stata出现闪退。

※难题:利用unicode转码,STATA闪退

Unicode处理:
①利用CLDS数据做计量分析前,用STATA15打开部分年份CLDS数据出现标签乱码;
②想通过unicode命令进行转码,却出现STATA闪退;
③换电脑(Windows/Mac),仍解决不了问题。

通常来说,官方unicode命令,能处理好绝大部分“DTA数据”标签乱码等问题,但是也有例外。
比如,我们用stata15打开CLDS2014年数据,出现标签格式乱码。

图1 CLDS2014数据图样

利用unicode命令进行转码操作:

unicode analyze CLDS2014individual161115.dta
unicode encoding set gb18030
unicode translate "CLDS2014individual161115.dta", transutf8
unicode retranslate "CLDS2014individual161115.dta", invalid(mark)

STATA出现闪退、报错,转码未成功。


※正确的解决方法:

1、将数据中所有的string,编码为UTF-8(详情help ustrfrom函数),使所有标签恢复正常可读的汉字格式。

foreach v of varlist _all {
local lbl: var label `v'
local lbl = ustrfrom("`lbl'", "gb18030", 1)
label var `v' `"`lbl'"'
}

图2 使用ustrfrom函数后,CLDS2014数据图样

2、将所有的变量放入宏type中

foreach v of varlist _all {
local type: type `v'
if strpos("`type'","str") {
replace `v' = ustrfrom(`v', "gb18030", 1)
}
}

图3 变量载入宏中,CLDS2014数据图样

3、将转码后的字符串重命名为变量名

foreach v of varlist _all {
local newname = ustrfrom(`"`v'"', "gb18030", 1)
rename `v' `newname'
}

图4 字符串重命名,CLDS2014数据图样

4、储存标签

label save using mylabel.do,replace

5、打开mylabel.do文件

图5 label表编码设定

6、将Encoding设置成Chinese(GB 18030)

图6 label表编码调整国标

7、对乱码标签进行手动修订

图7 label乱码表手动更正

***先删除乱码标签
label drop i1909 i1574 i1573 i1572 i1571 i1413 i1369 ... ...
***对乱码标签进行手动调整
... ...
label define i1413 1 `"农、林、牧、渔业"', modify
label define i1413 2 `"采掘业"', modify
label define i1413 3 `"制造业"', modify
label define i1413 4 `"电力、煤气及水的生产和供给业"', modify
label define i1413 5 `"建筑业"', modify
label define i1413 6 `"地质勘查业、水利管理业"', modify
label define i1413 7 `"交通运输、仓储及邮电通信业"', modify
label define i1413 8 `"批发和零售贸易、餐饮业"', modify
label define i1413 9 `"金融保险业"', modify
label define i1413 10 `"房地产业"', modify
label define i1413 11 `"社会服务业"', modify
label define i1413 12 `"卫生、体育和社会福利业"', modify
label define i1413 13 `"教育、文化艺术和广播电影电视业"', modify
label define i1413 14 `"科学研究和综合技术服务业"', modify
label define i1413 15 `"国家机关、党政机关和社会团体"', modify
label define i1413 16 `"其他行业"', modify
... ...

8、run手动调整的label命令,保存数据,完成转码。

最终处理结果展示

图8 CLDS2014最终结果效果图


注:个人有CLDS (包括2011、2012、2014、2016、2018)等若干年份数据。为方便大家,个人提供转码服务!如有意愿,可私信留言!

STATA闪退,CLDS数据无法转码相关推荐

  1. Android去除烦人的默认闪退

    背景 安卓应用闪退后总会出现一个"抱歉,App已经停止运行"的弹窗,这样的用户体验并不好.很多大厂的App都去除了这个弹窗,因此本文主要介绍如何去除默认闪退弹窗,以及在闪退时做一些 ...

  2. android township 游戏存档备份,游戏闪退存档全没了?不要怕,可以这样备份与还原游戏存档!...

    不少朋友可能有过这样的苦恼,好不容易在第三方商店下到好玩的修改版游戏,结果玩了一阵子突然提示证书失效,游戏闪退打不开了,只能卸载重装.可是卸载后,游戏之前的存档就没了,又得耗费大量的时间重头再来,这样 ...

  3. 升级iOS8和iOS9系统后,保险箱Pro、私人保险箱、私密相冊打开就闪退的官方解决方式...

    升级iOS8和iOS9.iOS10系统后,保险箱Pro.私人保险箱.私密相冊打开就闪退的官方解决方式 查看设备iOS操作系统版本号号办法:iPhone/iPad->设置->通用->关 ...

  4. 升级iOS8系统后,保险箱Pro、私人保险箱、私密相冊打开就闪退的官方解决方式...

    升级iOS8系统后,保险箱Pro.私人保险箱.私密相冊打开就闪退的官方解决方式   写在前面的话: 1.   本文适用条件    适用于:您的保险箱Pro.私人保险箱.私密相冊在iPhone或iPad ...

  5. 记录一个androidstudio的闪退

    我是做unity开发的,由于要出的包需要导出用Androidstudio出,记录一下碰到的闪退. 简述一下:unity的启动类被我打成了jar包会发生闪退,我把源码直接放进去,把jar删除就可以了. ...

  6. QT版本不对导致软件闪退

    QT版本的的链接问题,点击平台时候,闪退,然后查源码,源码找到的问题是析构的问题,但是析构并没有什么问题,这个问题只有在我的电脑上出现过, 然后也没有发现内存泄露,越界等问题,怀疑是QT版本问题,随后 ...

  7. 微信突发闪退 BUG,罪魁祸首竟是一张神奇的二维码图片

    公众号关注 「奇妙的 Linux 世界」 设为「星标」,每天带你玩转 Linux ! ​ 建议别尝试:转发这个二维码到群里,3秒后你会回来骂我(抖m求骂) 近日,网传微信识别上方二维码就会出现闪退BU ...

  8. 微信闪退Bug罪魁祸首竟是二维码引擎,附源代码分析

    建议别尝试:转发这个二维码到群里,3秒后你会回来骂我(抖m求骂) 近日,网传微信识别上方二维码就会出现闪退BUG,小编也忍不住尝试了一下,果然,一识别该二维码微信立马就出现了闪退的现象: 且会出现&q ...

  9. 微信图片二维码闪退丨为什么微信打开图片总是闪退

    今晚很多普通用户,当然也有程序员朋友中招,因此简单聊聊 因为是技术社区,没有正式安全报告那么严谨,希望你能看懂. 问题现象: 微信安卓与苹果端闪退 触发场景: 一张疑似带二维码的图 实际识别不到 没错 ...

最新文章

  1. 还有王法吗?美国联邦调查局开发人脸识别系统,数据源涉及公民隐私
  2. C++中extern关键字使用 http://blog.csdn.net/sruru/article/details/7951019
  3. 电商咄咄逼人的黑色星期五促销横BANNER设计模板
  4. java jar命令来运行jar包
  5. SQL Server中的“描述表”等效什么?
  6. 软件安装下载的镜像站、国内源
  7. 狗、油腻、保温杯的中年
  8. py将dicm格式图片转为jpg格式
  9. 车站计算机系统的简称,AFC计算机系统.ppt
  10. 【微信小程序】协同工作和发布 数据绑定
  11. matlab改变图像像素吗,在图像中随机更改像素值程序——matlab
  12. uoj#311 【UNR #2】积劳成疾
  13. 让最小化安装的CentOS 6.8能够浏览网页
  14. Linux搭建maven私服
  15. 让Enter键实现Tab键的功能
  16. python: 字符串转浮点数
  17. php提交表单到excel,使用php生成excel表单使用很少的非可编辑单元格
  18. Web3时代,Findora深度诠释未来公链的发展趋势
  19. tomcat中服务启动时输出D:\LSoft\MyEclipse\Common\binary\com.sun.java.jdk.win32.x86_1.6.0.013\bin
  20. Edge浏览器使用 Infinity 新标签页 (Pro)插件

热门文章

  1. 【linux kernel】基于ARM64分析linux内核的链接脚本vmlinux.lds.S
  2. getch()和getche()
  3. 顺序图和活动图的一个区别
  4. html5复选框控制按钮状态,HTML input checkbox复选按钮简介说明
  5. 如何一键修改视频画面的尺寸大小呢?
  6. 什么是数据清洗?数据清洗的原理是什么?
  7. 100个Python实战练手项目(附源码+素材),学习必备
  8. 一文彻底搞懂Mybatis系列(十六)之MyBatis集成EhCache
  9. LG30刷小米系统_微信支付宝运动刷步数,IOS安卓皆可使用
  10. python网络游戏开发教程_python 网游开发教程 | python做的游戏有哪些