在数据匹配前,一个重要的程序是需要对相关变量进行处理,这是由于:
第一,例如地区代码、行业代码、电话、邮政编码等变量是字符串格式,需要转化为数据格式。
第二,以上变量存在着空值、非数字符号等,需要将其剔除。
第三,需要将相关变量名称在年份间统一起来,最好用英文变量名。
为此,需要打开每个年份的数据,然后看看地区代码、行业代码、电话、邮政编码等变量是否是字符串格式,然后剔除非数字符号,转化为数字格式。编制的STATA程序如下:
*设原字符型变量是行政区划代码 电话号码 邮政编码 行业代码 开业时间年 开业时间月:
using filename
global vars "行政区划代码 电话号码 邮政编码 行业代码 开业时间年 开业时间月"
qui foreach v of varlist $vars{
g x=`v'
d x
g n=.
forv i=1/`=r(width)'{
replace n=indexnot(x,"0123456789")
replace x=substr(x,1,n-1)+substr(x,n+1,.)
}
g z=real(x)
drop x n
rename z `v'1
}
处理完毕后生成后缀为1的新变量,为了有所比较,所以才没用replace 命令替换掉原有的字符串变量。将所需要的变量名称改为相应英文名称,经过这一步,数据就可以进行数据匹配了!