2017-05-24 4 views
-1

저는 data.table을 가지고 있으며 그룹의 첫 번째 관찰을 기반으로 새 변수를 만들려고합니다. :R/Rstudio에서 그룹의 첫 번째 관찰을 기반으로 변수를 만듭니다.

ID, Month, Value 
    A Jan  5 
    A Feb  10 
    A Mar  7 
    B Feb  3 
    B Mar  6 

원하는 출력 :

ID, Month, Value First.Month 
    A Jan  5  Jan 
    A Feb  10  Jan 
    A Mar  7  Jan 
    B Feb  3  Feb 
    B Mar  6  Feb 

내가 Rstudio하고 있어요는, 어떤 도움이 사전에

감사합니다 감사합니다! data.table 함께

+0

에 오신 것을 환영합니다 SO 변환합니다. 당신이 시도한 것을 보여줄 수 있습니까? – KoenV

답변

1

우리가 만드는 'ID'와 (:=)를 할당 '월'예 '월 [(1L)]의 첫 번째 요소 그룹화 (1L, 그것은 1 떨어 수 단지 정수 표현) 할 'First.Month'

library(data.table) 
dt[, First.Month := Month[1L], by = ID] 
dt 
# ID Month Value First.Month 
#1: A Jan  5   Jan 
#2: A Feb 10   Jan 
#3: A Mar  7   Jan 
#4: B Feb  3   Feb 
#5: B Mar  6   Feb 

주 :이 data.table없는 경우, data.table 첫번째

setDT(dt) 
+1

완벽하게 일한 답변 및 자세한 설명 주셔서 감사합니다. –