‘将字符型转为数值,例如将行业分类变为数字编码、省份变为数值:
encode var, gen(var1)
有时,直接编码不能满足需求,例如要根据行业分类第一字母分类,C类行业根据前两个字符转变为数值,此时的代码为:
gen Ind = Indcd replace Ind = substr(Indcd,1,1) if substr(Indcd,1,1)!="C" replace Ind = substr(Indcd,1,2) if substr(Indcd,1,1)=="C"
encode Ind,gen(industry)
截取字符串的部分,例如经常建立年份,需要截取日期的前四个字符:
gen var1 = substr(var,1,4)
将所有空值全部替换成0值:
一个个变量replace 很麻烦,可以用以下简便方法
mvencode _all, mv(0) |
如果使用上述命令,仍有一部分缺失值并未替换成0,可用下述命令强制转换
mvencode _all, mv(0) override
把字符串的日期格式转换为date格式
首先,CSMAR上下载的很多默认是“2020-05-21”这种格式,显然是date()函数不能识别的,首先要转换