全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
1034 1
2021-02-01

在数据处理过程中,原始数据通常包含汉字,如“房贷3000元”,如何只保留3000?以下命令可以实现。欢迎补充更好的方法。

*********************************************************************

globalvars "所有变量"

foreachv of varlist $vars{

gen`v'_new=""

gen`v'_length=length(`v')

egenmax_`v'=max(`v'_length)

locali=1

while`i'<= max_`v'{

gen`v'_middle_`i'=substr(`v',`i',1)

replace`v'_new=`v'_new+`v'_middle_`i' if (`v'_middle_`i'=="0"|`v'_middle_`i'=="1" |`v'_middle_`i'=="2"|`v'_middle_`i'=="3" ///

                                         |`v'_middle_`i'=="4" |`v'_middle_`i'=="5"|`v'_middle_`i'=="6" |`v'_middle_`i'=="7" ///

                                                                                               |`v'_middle_`i'=="8"|`v'_middle_`i'=="9" |`v'_middle_`i'==".")                                                                                          

drop`v'_middle_`i'

dis`i'

locali=`i'+1

}

dropvars`v'_length max_`v'

destring `v'_new, replace

}

**************



二维码

扫码加我 拉你入群

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

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

全部回复
2021-2-2 22:02:40
help moss
也可以用正则表达式
二维码

扫码加我 拉你入群

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

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

栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群