2014-09-20 2 views
0

여기에서 얻을 수있는 도움에 감사드립니다.새 열을 추가하고 R의 다른 열 변수를 기반으로 변수를 채우려면 어떻게해야합니까?

내가 만든 데이터 세트가 있는데, 반환 연도를 기준으로 "spReturns"테이블에서 "Total Return Change"변수를 가져 와서 "relativeTable"의 새 열로 추가해야합니다 ". 캐치는 각 반환 값이 "relativeTable"에 동등한 "연도"가 추가되어야한다는 것입니다. 예를 들어, "year"1989와 함께 relativeTable의 각 관찰에는 "총 수익 변화"와 일치하는 수익의 새 열이 있어야합니다. 이 경우 1989 년의 모든 "연도"는 1989 년부터 "spReturn"테이블에서 0.1661의 수익을 가져야합니다. 나는이 일에 어떻게 가야할지 전혀 모른다. 그래서 내가 얻을 수있는 도움에 감사한다. 아마도

require(Quandl) 
require(lubridate) 
require(zoo) 
require(xts) 

myData <- load(url("http://bit.ly/dasi_gss_data")) 
myData <- myData 

year <- gss$year 
finSat <- gss$satfin 

relativeTable <- data.frame(year, finSat) 
relativeTable <- subset(relativeTable, year > "1988" & !is.na(finSat)) 


spReturns <- Quandl("SANDP/ANNRETS", trim_start="1970-01-11", 
        trim_end="2012-12-31", authcode="nwy3a_Gmd7TSS9fVirxT", 
        collapse="annual") 

percentChange <- spReturns$"Total Return Change" 

spReturns$"Year Ending" <- format((spReturns$"Year Ending"), "%Y") 
spReturns$"Year Ending" <- as.numeric(spReturns$"Year Ending") 
spReturns$"Year Ending" <- spReturns[,1] + 1 #the following year 
+0

,'merge'? – hrbrmstr

+1

보다 구체적으로,'merge (relativeTable, spReturns [, c (1,5)], by.x = "year", by.y = "Year Ending" – hrbrmstr

답변

1
combined <- merge(relativeTable, spReturns, by.x = "year", by.y = "Year Ending") 
관련 문제