I have 2 data frames of equal column size of 5. The first 4 column names are the same and the last column is different. I report the value (T) in the last column indicating that there is an outlier for each of average & sigma in respective data frames.
My first data frame - df1
TimeStamp <- c("2015-04-01 11:40:13", "2015-04-03 02:54:45")
ID <- c("DL1X8", "DL202")
Avg <- c(38.1517, 0.7131)
Sig <- c(11.45880000, 0.01257816)
Outlier_Avg <- c("T","T")
df1 <- data.frame(TimeStamp, ID, Avg, Sig,Outlier_Avg)
+---------------------+-------+---------+-------------+-------------+
| TimeStamp | ID | Avg | Sig | Outlier_Avg |
+---------------------+-------+---------+-------------+-------------+
| 2015-04-01 11:40:13 | DL1X8 | 38.1517 | 11.45880000 | T |
| 2015-04-03 02:54:45 | DL202 | 0.7131 | 0.01257816 | T |
+---------------------+-------+---------+-------------+-------------+
My Second data frame - df2
TimeStamp <- c("2015-04-01 11:40:13", "2015-04-04 02:57:45", "2015-04-06 09:54:45")
ID <- c("DL1X8", "DP308","DM3X8")
Avg <- c(38.1517, 24.7131, 0.0234)
Sig <- c(11.4588, 6.0175,0.0665)
Outlier_Sig <- c("T","T","T")
df2 <- data.frame(TimeStamp, ID, Avg, Sig,Outlier_Sig)
+---------------------+-------+---------+---------+-------------+
| TimeStamp | ID | Avg | Sig | Outlier_Sig |
+---------------------+-------+---------+---------+-------------+
| 2015-04-01 11:40:13 | DL1X8 | 38.1517 | 11.4588 | T |
| 2015-04-04 02:57:45 | DP308 | 24.7131 | 6.0175 | T |
| 2015-04-06 09:54:45 | DM3X8 | 0.0234 | 0.0665 | T |
+---------------------+-------+---------+---------+-------------+
Desired Output:
I am trying to get a df3 that looks like this
+---------------------+-------+---------+-------------+-------------+-------------+
| TimeStamp | ID | Avg | Sig | Outlier_Avg | Outlier_Sig |
+---------------------+-------+---------+-------------+-------------+-------------+
| 2015-04-01 11:40:13 | DL1X8 | 38.1517 | 11.45880000 | T | T |
| 2015-04-03 02:54:45 | DL202 | 0.7131 | 0.01257816 | T | N/A |
| 2015-04-04 02:57:45 | DP308 | 24.7131 | 6.0175 | N/A | T |
| 2015-04-06 09:54:45 | DM3X8 | 0.0234 | 0.0665 | N/A | T |
+---------------------+-------+---------+-------------+-------------+-------------+
I tried using merge(df1,df2). It returns only the rows that are matched and hence only 1 row is returned. I need to return all the rows and put N/A as shown above. Could you kindly help me on this?