날짜에 경기에 열을 가로 질러 합산내가 열 ID 및 날짜와 dataframe <strong>DF1</strong>이
ID <- c(101,101,101,102,102)
date <- c("X20170101","X20170103","X20170106","X20170102","X20170104")
df1 <- data.table(ID,date)
ID date
101 X20170101
101 X20170103
101 X20170106
102 X20170102
102 X20170104
과 열 ID로 dataframe DF2 많은 날짜로 (문자열 "XYYYYMMDD"등) 헤더
ID <- c(100,101,102,103,104)
X20170101 <- c(1,NA,NA,2,1)
X20170102 <- c(NA,1,1,1,NA)
X20170103<-c(NA,1,NA,2,1)
X20170104 <- c(2,3,NA,2,1)
X20170105 <- c(1,1,NA,1,NA)
X20170106<-c(NA,1,NA,2,1)
df2=data.table(ID,X20170101,X20170102,X20170103,X20170104,X20170105,X20170106)
ID X20170101 X20170102 X20170103 X20170104 X20170105 X20170106
100 1 NA NA 2 1 NA
101 NA 1 1 3 1 1
102 NA 1 NA NA NA NA
103 2 1 2 2 1 2
104 1 NA 1 1 NA 1
나는 열을
수 추적을 포함 DF1
에 추가하고 싶은 ing : 각 ID (예 : 101) 및 날짜 (예 : DF1에 X20170101) DF1 뺀 날 날짜 (e.g.X20170101)와 연속 한 사이 DF2의 해당 셀의 합 (예컨대 X20170102하지 X20170103). 즉, 새 df1은 다음과 같아야합니다.
ID date count
101 X20170101 1
101 X20170103 5
101 X20170106 1
102 X20170102 1
102 X20170104 NA
감사합니다.
변덕, 해결책 주셔서 감사합니다. 나는 한가지 문제 만 가지고있다. 코드에서 원본 df1에없는 ID = 102 및 날짜 = X20170101에 대한 새 행을 추가하고 있습니다. 이것을 피할 수 있습니까? – user3618451
나는 편집을 참조하십시오 –
편집 된 답변을 참조하십시오. 값 중 하나가 예상 한 결과와 다른 점에 유의하십시오. 그러나 사용자 측에서 실수 일 수 있다고 생각합니다. 티. –