변수 세트를 확인하고 값을 바꿔야 할 상황이 있습니다. 예를 들어, 세 변수 a, b, c
이 있다고 가정합니다. c
또는 b
또는 a == 1
인 경우 변수 z = 1
을 만들어야합니다.Stata는 if 문을 사용합니다.
다른 말로하면 c
이 1인지 확인하기 위해 c
을 체크하는 if 루프를 생성해야합니다. 그렇지 않다면 b
이 1인지 확인하고 싶습니다. 하지 a
은 1입니다 그리고 c
가 1이면 다음 루프 중지해야 또는 b
가 1 인 경우는 a
확인에서 중지해야합니다.
내 코드이 코드는 내가 필요로하고 내가 주위에 내 머리를 정리 할 수없는 일을하지
gen z=.
foreach var in c b a{
if `var'=1 & z!=. {
replace z=1
}
else
z=.
}
}
입니다. 나는 조건을 동시에
(a==1|b==1|c==1)
를 확인이 코드이
replace z=1 if (a==1|b==1|c==1)
처럼하지만 내 이해에 명령을 사용할 수 있습니다 이해합니다. 루프마다 각 변수를 확인해야합니다. a
b
c
단계별로.
귀하의 앞의 두 질문은 여전히 열려있는 것으로 보인다. 답변에 대한 답변이나 의견에 대한 회신을 부탁드립니다. –
검사 된 변수가 1 인 순서가 어떤 차이가 있습니까? 항상 'z'에 1을 넣습니다. –