1
아래 구조체 (df
)가있는 데이터 프레임이 있습니다. ID2, PERIOD
을 수정하여 ID2, PERIOD 번호가 AMT > 0
(AMT> 0, EVID가 0 일 때 참고)으로 이월되도록 수정하고 싶습니다. 따라서 ID2==13/PERIOD==2
의 처음 두 행은 실제로 dfout
데이터 프레임에 나타나는대로 ID2==12/PERIOD==1
이어야합니다. 그렇게된다.데이터 프레임 열의 조건에 따라 ID 번호가 이월됩니다.
df <-
ID ID2 TIME DVID AMT DV PERIOD
1 12 0 0 50 NA 1
1 12 0.5 1 0 10 1
1 12 0.5 2 0 15 1
1 13 600 1 0 2.5 2
1 13 600 2 0 4 2
1 13 600 0 100 NA 2
1 13 602 1 0 20 2
1 13 602 2 0 35 2
1 14 800 1 0 5 3
1 14 800 2 0 10 3
1 14 800 0 50 NA 3
dfout <-
ID ID2 TIME DVID AMT DV PERIOD
1 12 0 0 50 NA 1
1 12 0.5 1 0 10 1
1 12 0.5 2 0 15 1
1 12 600 1 0 2.5 1
1 12 600 2 0 4 1
1 13 600 0 100 NA 2
1 13 602 1 0 20 2
1 13 602 2 0 35 2
1 13 800 1 0 5 2
1 13 800 2 0 10 2
1 14 800 0 50 NA 3
R에서이 작업을 수행하는 방법에 대한 트릭이 있습니까?
를 사용하여. 첫 번째 해결책은했습니다! – Amer
@Amer 어떤 이유인지 그것은 나를 위해 일하고 있습니다. – akrun
mm은 내 스크립트에서 함께로드되는 plyr 및 dplyr과 관련이있을 수 있습니다. 걱정하지 마세요. 나는 더 자세히 살펴볼 것입니다. 고맙습니다. – Amer