r - Can't match data.frames correctly -


what doing wrong here? date "5" not in final data.frame.. why that?

date1 <- c(1,2,3,4,5,6,7,8,9) ret <- c(1.2,2.2,-0.5,0.98,0.73,-1.3,-0.02,0.3,1.1) df <- data.frame(date1,ret)  date2 <- c(1,2,3,5,6,8) q <- c(3,2,1,4,5,7) ev <- data.frame(date2,q)  matched <- ev[which(is.na(match(df[["date1"]], ev[["date2"]])) == f),] matched  #    date2  q # 1      1  3 # 2      2  2 # 3      3  1 # 5      6  5 # 6      8  7 # na    na na 

for example above think want ev[ev$date2 %in% df$date1 , ].


have created example new data dates quite different row numbers.

date1 <- 10:18 ret <- c(1.2,2.2,-0.5,0.98,0.73,-1.3,-0.02,0.3,1.1) df <- data.frame(date1,ret)  date2 <- c(10:13,20,17) q <- c(3,2,1,4,5,7) ev <- data.frame(date2,q) 


@ vectors want match

df$date1  #[1] 10 11 12 13 14 15 16 17 18 ev$date2 # [1] 10 11 12 13 20 17  # 1 of ev$date2 in df$date1 (ie. ev$date2 = 20) 


match date values

first @ %in% operand.

this produces " logical vector indicating if there match or not left operand" (from ?match). ie example below - ev$date2 appear in df$date1: true or false

ev$date2 %in% df$date1 # [1]  true  true  true  true false  true 

i use method subset data: if want keep rows of ev ev$date2 appear in df$date1 use

ev[ev$date2 %in% df$date1 , ] #   date2 q # 1    10 3 # 2    11 2 # 3    12 1 # 4    13 4 # 6    17 7 


match "returns vector of positions of (first) matches of first argument in second" (again help). ie example - (as in @ positional index) values of ev$date2 appear in df$date1, if @ all

match(ev$date2 , df$date1) # [1]  1  2  3  4 na  8  # sp makes sense: values of ev$date2 found in df$date1 # (with position in df$date1 returned) except ev$date2 = 20 -  # returns na not found in df$date1 

i use method pull out values df, matching on date. ie

(ev$ret <- df$ret[match(ev$date2 , df$date1) ])   #date2 q   ret #1    10 3  1.20 #2    11 2  2.20 #3    12 1 -0.50 #4    13 4  0.98 #5    20 5    na #6    17 7  0.30 

Comments

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

javascript - jQuery show full size image on click -