그룹의 첫 번째 또는 임의 항목에 숫자를 입력해야합니다. 나는 다음을 수행하십시오데이터 테이블의 조건부 행에 대해서만 데이터를 입력하는 방법
item<-sample(c("a","b", "c"), 30,replace=T)
week<-rep(c("1","2","3"),10)
volume<-c(1:30)
DT<-data.table(item, week,volume)
setkeyv(DT, c("item", "week"))
sampleDT <- DT[,.SD[1], by= list(item,week)]
item week volume newCol
1: a 1 1 5
2: a 2 14 5
3: a 3 6 5
4: b 1 13 5
5: b 2 2 5
6: b 3 9 5
7: c 1 7 5
8: c 2 5 5
9: c 3 3 5
DT[DT[,.SD[1], by= list(item,week)], newCol:=5]
을 sampleDT 밖으로 올바른 온다,하지만 마지막 줄은 대신 조건 사람의 모든 컬럼에 5를 둔다. 내가 뭘 잘못하고 있니?
내가 R' 구문'에 대해 이런 말을 것이라고 생각하지 마십시오,하지만 두 번째 명령은 매우 휙 같습니다
또한 구문 간단하게 보류 FR있다! – MattLBeck
감사합니다. $ V1은 새 열이 만들어진 것처럼 보입니다. – user1555785
@ user1555785'DT [, .I [1], by = list (item, week)]'의 출력을보고'$ V1' 부분이 깨끗해야합니다 – eddi