全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 统计软件培训班VIP答疑区
1899 1
2011-01-11
连老师:
       您好!下面的这段data clean的程序中,我有几个问题:

foreach var of varlist duty1_mid-duty8_high {
capture replace `var'="." if `var'=="aaa"
destring `var', replace
replace `var'=. if `var'==9
}

1、duty1_mid-duty8_high是说按照stata录入时变量的排序,data clean变量duty1_mid至duty8_high么之间的变量么?
2、{} 的摆放位置是一个在第一行末,另一个在最后一行开头么?
3、第二行的命令与是不是与for any 命令和recode命令是等价的?

for any
duty1_mid    duty2_mid     duty7_high   duty8_high :
replace X=. if X==0 | X==9999999

或者:
recode hightyp leocation* school* (9=.)


4、第三行的destring `var', replace 是啥意思呢
5、第二行capture replace `var'="." if `var'=="aaa"与第四行replace `var'=. if `var'==9之间的关系是“模板与具体赋值”的关系么?
6、另外一个小问题是,表示“或”的那个小竖杠键盘里怎么没有呢,每次用的时候都得去别的文件里复制、粘贴,好囧啊

一口气问了这么多弱弱的问题,麻烦老师啦,谢谢连老师!
二维码

扫码加我 拉你入群

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

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

全部回复
2011-1-11 18:07:26
viking1111 发表于 2011-1-11 10:25
连老师:
       您好!下面的这段data clean的程序中,我有几个问题:

foreach var of varlist duty1_mid-duty8_high {
capture replace `var'="." if `var'=="aaa"
destring `var', replace
replace `var'=. if `var'==9
}

1、duty1_mid-duty8_high是说按照stata录入时变量的排序,data clean变量duty1_mid至duty8_high么之间的变量么?
A: Yes.

2、{} 的摆放位置是一个在第一行末,另一个在最后一行开头么?
A: Yes

3、第二行的命令与是不是与for any 命令和recode命令是等价的?

for any
duty1_mid    duty2_mid     duty7_high   duty8_high :
replace X=. if X==0 | X==9999999

或者:
recode hightyp leocation* school* (9=.)

A: 殊途同归,只要能抓住老鼠就是好猫。


4、第三行的destring `var', replace 是啥意思呢
A: 把每个变量都从字符型转换成数值型,并自动替换原来的变量。

5、第二行capture replace `var'="." if `var'=="aaa"与第四行replace `var'=. if `var'==9之间的关系是“模板与具体赋值”的关系么?
A: 两个都是根据条件语句替换变量中的数值。不过,前一个命令是针对字符型变量进行了,因此, aaa 需要加引号;而后一个则是针对数值变量进行的,因此 9 不需要加引号。

6、另外一个小问题是,表示“或”的那个小竖杠键盘里怎么没有呢,每次用的时候都得去别的文件里复制、粘贴,好囧啊
A: 按住 Ctrl 键,同时按下回车键上方的那个键。

一口气问了这么多弱弱的问题,麻烦老师啦,谢谢连老师!
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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