其他
批量处理变量名和标签的小方法
本文作者:王 彤,中南财经政法大学统计与数学学院
本文编辑:陈丹慧
技术总编:余术玲
爬虫俱乐部云端课程
rename
命令和label
命令分别处理变量名和标签。这篇文章我们介绍一个批量处理变量名和标签的小方法:nrow
命令和labone
命令。(1)命令介绍
labone
命令可以将数据第一行或前面某几行作为变量的标签,并删除或保留这几行数据。(2)事先准备
labone
命令为外部命令,需要事先安装。命令为: ssc install labone,replace
(3)命令语法
labone [varlist] [,options]
(4)命令注释
varlist | 指定制作标签的变量,如果未指定,默认为全部变量 |
option选项 | 描述 |
---|---|
nrow(numlist) | 指定使用哪一行的内容标记变量 ;如果未指定,则默认使用第一行 |
concat(concat_strings) | 如果使用多行的内容标记变量,通过指定的字符串连接来自不同行的内容;默认是由空格连接 |
nospace | 在使用不同行的内容作为标签时,中间不用空格连接 |
(5)举例说明
import excel
命令导入数据,加firstrow
后指定数据的第一行为变量名。添加case
选项,结合选项firstrow
,可以对第一行的英文变量名进行大小写转换。(ps:数据文件可以通过公众号后台回复TRD_Dalyr.xls来获取哦~)import excel using TRD_Dalyr.xls,firstrow case(lower) clear
(5.1)如果要把第一行的内容作为变量的标签,命令如下:
labone,nrow(1)
(5.2)如果要把第一、二行对应内容作为前三个变量的标签,命令如下:
labone stkcd trddt opnprc,nrow(1,2)
(5.3)如果要把第一、二、四行内容作为对应全部变量的标签,并且内容之间连接时分别用/和:隔开,命令如下:
labone,nrow(1 2 4) concat(/ :)
(5.4)如果要把第一到四行的内容作为对应前三个变量的标签,并且标签间不用空格隔开,命令如下:
labone stkcd trddt opnprc,nrow(1/4) nospace
(1)命令介绍
nrow
命令可以将变量重命名为数据的第n行值,它的作用有点类似于使用import excel
导入数据时使用的firstrow
命令,不过不是在导入时使用,而且可以指定用于重命名变量的行数以及只是重命名某几个变量。如果特定变量的第n行的值不是有效的Stata名称,则该命令将使用strtoname
函数自动对其进行转换。(2)事先准备
nrow
命令为外部命令,需要事先安装。命令为: ssc install nrow,replace
(3)命令语法
nrow [row#] [, keep varlist(varlist)]
(4)命令注释
可选参数 | 描述 |
---|---|
可选参数row# | 选择任意不大于数据总行数N的正整数,作为用于重命名变量的行 |
可选参数keep | nrow默认是将第n行数据作为变量名,并删除这一行数据,使用keep命令可以保留这些行 |
(5)举例说明
import excel
命令导入数据,这里我们不加入firstrow
选项。import excel using TRD_Dalyr.xls,case(lower) clear
(5.1)如果重命名变量为第一行数据的值,命令如下:
nrow
(5.2)如果要重命名变量为第四行数据的值,并删除前四行数据,命令如下:
nrow 4
(5.3)如果要重命名变量为第一行数据的值,并保留第一行数据,命令如下:
nrow,keep
(5.4)如果要将第一行的对应内容作为变量A-C的名称,并保留原来第一行,命令如下:
nrow,varlist(A-C) keep
计算工作日的小能手——workdays
Seminar | 企业错报与银行贷款合同
小贴士:Markdown的基本语法
听说相貌也能量化 | 调用百度人脸检测API实现颜值打分
列出指定属性的变量|findname命令比ds命令
Json文件好帮手——JsonPath
pyecharts绘图——河流图展示
你知道MDPI期刊的热门题目吗?
工作中一切困难的解决途径——motivatedolly
【爬虫实战】喜茶的门店都开在了哪里?
微信公众号“Stata and Python数据分析”分享实用的stata、python等软件的数据处理知识,欢迎转载、打赏。我们是由李春涛教授领导下的研究生及本科生组成的大数据处理和分析团队。
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿+推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到有关数据处理、分析等问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。