分享

变量和标签的故事

 张春强2022 2018-06-28


暑期Stata培训班招生啦!!!接力线上的网课培训,我们在今夏又开始新一轮的线下培训啦!8月4日至12日,爬虫俱乐部期待与您的相遇!培训具体内容详见推文暑期Stata编程技术定制培训班


有问题,不要怕!点击推文底部“阅读原文”下载爬虫俱乐部用户问题登记表并按要求填写后发送至邮箱statatraining@163.com,我们会及时为您解答哟~

喜大普奔~爬虫俱乐部的github主站正式上线了!我们的网站地址是:https://stata-club.,粉丝们可以通过该网站访问过去的推文哟~

好消息:爬虫俱乐部隆重推出数据定制及处理业务啦,您有任何网页数据获取及处理方面的难题,请发邮件至我们邮箱statatraining@163.com,届时会有俱乐部资深高级会员为您排忧解难!

在数据处理中,我们经常会遇到将字符型的分类变量转化为数值型变量的问题,并且将原来的值定义为对应的标签值。

在往期推文《数据类型转换之字符型-数值型》《论egen的花样用法(三)》,我们分别介绍的encode命令和egen命令与group搭配使用时均可以实现这样的功能哦~

以数据集hbp2举例如下,该数据中变量sex为字符型的分类变量。

webuse hbp2,clearencode sex,generate(gender)br sex gender in 1/5

结果如下:

当我们不输出变量的标签值时,可以执行如下命令语句:

br sex gender in 1/5, nolabel

可以发现,新生成变量gender是对应的数值。

同样,我们用egen命令与group搭配,看一看能否达到同样的效果呢?

webuse hbp2,clearegen gender = group(sex), labelbr sex gender in 1/5

br sex gender in 1/5, nolabel

我们同样达到了想要的效果。

另外,我们还会遇到将一个变量的观测值定义为另一变量的标签值的问题,那该如何解决呢?这里可以用到一个外部命令labmask(执行命令findit labutil下载labutil命令即可),我们以国泰安上一个关于公司审计意见的数据集为例进行介绍,样本数据如下所示:

我们想让变量证券简称变为证券代码的标签,就可以执行如下命令语句:

labmask 证券代码, values(证券简称)

得到结果:

可以看到,我们将证券简称定义成了证券代码的值标签。

温馨小贴士

我们发现,在最开始介绍的分类字符变量转化为数值型变量时,被转化后变量的分类序号是默认的,而如果我们想要自由定义这个分类序号,就可以参照后面介绍的方法,先生成一个新变量,用来表示变量的序号,然后将原来的变量定义为该新变量的标签。感兴趣的读者,可以先自行尝试,我们在下期推文会详细介绍哦~

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章