25562 13

[学习心得] 【stata】将CSMAR国泰安数据库的变量说明批量添加为标签 [推广有奖]

已卖:245份资源

讲师

68%

还不是VIP/贵宾

-

威望
0
论坛币
7342 个
通用积分
76.5308
学术水平
39 点
热心指数
41 点
信用等级
23 点
经验
13421 点
帖子
389
精华
0
在线时间
653 小时
注册时间
2012-3-3
最后登录
2025-12-19

楼主
txd2011又来了 发表于 2016-1-7 11:16:31 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
下载Csmar数据后,给变量添加中文label是件比较费力的事情。如何利用csmar提供的变量说明文件,在stata中批量添加label呢?

首先,非常感谢连玉君老师!!!

连玉君老师2010年曾经写过一篇博文(http://blog.cnfol.com/arlion/article/1287199937-28549911.html)以解决这个问题,不过,现在国泰安数据库的文件说明内容及格式较2010年有较大变动,使用连老师博客提供的代码已经不能解决。所以我对连老师的程序进行了一些改动。现在分享出来,或许会对有的坛友有帮助。
------------------------------------------------------------------------------------------------------------
准备工作:
Stata下载的数据解压后一般会有一个txt文件(文件名中含有“[DES]”),它对各变量的意义进行了说明,如图所示:
1.png

1:打开这个txt文件,全选,复制,粘贴到Stata的Data-editer里面,如下图:
2.png
3.png
2:执行如下命令:
        replace var1 = subinstr(var1," - ","-",.)
                // subinstr为字符替换函数,相当于office里面的Ctrl+H
        replace var1 = subinstr(var1," ["," *[",.)
        split var1, p(*) gen(s)
                //以*为分隔点,将var1拆分出新变量s1,s2 ,…,sk+1(k为var1中*的个数)
        gen str20 s3 = " label var "
        replace s1 = lower(s1)
               //将变量名中所有字母转换为小写,如需转换为大写则将lower写为upper
        replace s2 = `"""' + s2 + `"""'
        gen a1 = " "
        gen a2 = a1
        order  a1 s3 s1 s2 a2
        keep  a1 s3 s1 s2 a2

3.将data-editor窗口中的内容贴入do-editor文件即可:
4.png
5.png



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:国泰安数据库 Stata CSMAR 国泰安数据 tata stata 批量 添加 标签 国泰安

回帖推荐

115861 发表于11楼  查看完整内容

楼主厉害,赞一个

windtalker312 发表于9楼  查看完整内容

谢谢分享,很好很强大

lisasunshine 发表于6楼  查看完整内容

点赞,真的很好用!谢谢分享!

wshf666666 发表于5楼  查看完整内容

很赞!

hanlinxian246 发表于4楼  查看完整内容

非常棒的命令

Nessie 发表于3楼  查看完整内容

太赞了~

laodong1983 发表于2楼  查看完整内容

很好的程序
已有 3 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
hateya0 + 1 + 1 + 1 热心帮助其他会员
statax + 100 + 20 + 3 + 3 精彩帖子
laodong1983 + 5 + 5 + 5 热心帮助其他会员

总评分: 经验 + 100  论坛币 + 20  学术水平 + 9  热心指数 + 9  信用等级 + 6   查看全部评分

本帖被以下文库推荐

天使

沙发
laodong1983 在职认证  发表于 2016-1-7 13:52:57
很好的程序

藤椅
Nessie 发表于 2016-3-12 00:18:39
太赞了~

板凳
hanlinxian246 发表于 2016-4-17 09:15:23
非常棒的命令

报纸
wshf666666 发表于 2016-4-17 10:13:49 来自手机
txd2011又来了 发表于 2016-1-7 11:16
下载Csmar数据后,给变量添加中文label是件比较费力的事情。如何利用csmar提供的变量说明文件,在stata中批 ...
很赞!

地板
lisasunshine 发表于 2016-4-24 21:42:21
点赞,真的很好用!谢谢分享!

7
hanlinxian246 发表于 2016-9-15 16:46:35
学习了!

8
筆落詩成 发表于 2017-9-3 16:22:03
label与变量间少个空格,运行命令错误,如何解决呢?

9
windtalker312 发表于 2019-1-2 19:07:51
谢谢分享,很好很强大

10
温迪爱禾洛 学生认证  发表于 2019-2-27 19:27:50
好帖,顶一下

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-1 08:43