作者JamesChen ( )
看板Statistics
标题[程式] Stata loop question
时间Thu Jul 18 14:32:37 2013
[软体程式类别]:
Stata
[程式问题]:
资料处理
[软体熟悉度]:
高(1年以上)
但从来没写过 stata 的 loop
[问题叙述]:
forv x=1/5 {
replace p1 = (x-1)*6+1 if whiteplayer=="A" & group==x
replace p2 = (x-1)*6+1 if greenplayer=="A" & group==x
replace p1 = (x-1)*6+2 if whiteplayer=="B" & group==x
replace p2 = (x-1)*6+2 if greenplayer=="B" & group==x
replace p1 = (x-1)*6+3 if whiteplayer=="C" & group==x
replace p2 = (x-1)*6+3 if greenplayer=="C" & group==x
replace p1 = (x-1)*6+4 if whiteplayer=="D" & group==x
replace p2 = (x-1)*6+4 if greenplayer=="D" & group==x
replace p1 = (x-1)*6+5 if whiteplayer=="E" & group==x
replace p2 = (x-1)*6+5 if greenplayer=="E" & group==x
replace p1 = (x-1)*6+6 if whiteplayer=="F" & group==x
replace p2 = (x-1)*6+6 if greenplayer=="F" & group==x
}
程式码很简单 就是 x = 1 到 5 带进去做这几个 replace
可是他给我错误 x not found 让我摸不着头绪
难道我要先定义 x ?
感谢回答
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.193.40.116
1F:→ JamesChen:我搞定了... 把 x 改成 group 然後 07/18 14:46
2F:→ JamesChen:& group==x 都删掉就成功了... 07/18 14:47
3F:→ JamesChen:看来是我把 MATLAB 那个逻辑带来了... 07/18 14:47
4F:推 Yukirin:用for系列回圈的时候 不能直接叫x 要用`x'才会是你要的 07/18 19:40