我有2个数据帧,如下所示。 Dataframe 1的时间戳为2017年6月至2017年9月.Dataframe 2的时间戳为2018年1月15日至1月18日。
我需要结合这两个数据框,而不会丢失任何数据。
数据集中的列名相同。
数据帧1:382观察; 38个变量;时间戳:1-15-2018至1-18-2018
Dataframe 2:9567观察; 34个变量;时间戳:6-6-2017至9-13-2017
Dataframe 1:
TimeStamp A B C D E F G H
1/15/2018 0:00 49.9238 62.2187 0 52.3125 63.457 49 84 54
1/15/2018 0:15 49.8437 62.4817 0 52.3125 58.593 49 84 54
1/15/2018 0:30 50.2187 62.3932 0 52.625 75.995 49 84 54
Dataframe 2:
TimeStamp D A B E C F
6/6/2017 0:00 54 71.94 71.94 44.684 79.06 40.996
6/6/2017 0:15 53 71.94 71.63 45.966 80.06 40.708
6/6/2017 0:30 54 73.44 72.06 46.088 77.81 40.845
6/6/2017 0:45 54 73.88 72.06 46.704 83.56 40.654
6/6/2017 1:00 52 72.81 71.75 47.144 78.19 40.685
答案 0 :(得分:3)
假设您的数据框名为df1
和df2
,这是使用dplyr
的简单解决方案。
library(dplyr)
df.new <- bind_rows(df1, df2)
默认情况下,此过程将保留显示在任何数据框中的所有列。
答案 1 :(得分:0)
您有另一种可能的解决方案。假设您获得了数据帧df1
和df2
。
library(dplyr)
df.merged <- union_all(df1, df2)
注意: union_all
在某种意义上与bind_rows
不同,如果两个数据框具有相同的列,则union_all
会删除重复的列,而bind_rows
保留重复的行。如果两个数据帧都有不同的列数(可能是几个常见的列名),那么所有列都将包含在合并的数据帧中。
答案 2 :(得分:-1)
您还可以使用 cbind 加入两个数据框
df.new <- cbind(df1, df2)