【问题标题】:Combine two data frames with the same column names合并具有相同列名的两个数据框
【发布时间】:2013-11-19 20:21:30
【问题描述】:

我有两个这种格式的data.frame(这是数据集的一小部分):

data.frame 1

ID  precip  lat lon
1   45  115 -122.5
2   42.5    130 -122.5
3   40  155 -122.5
4   37.5    140 -122.5

data.frame 2

    precip  lat lon
1   108.61  115 -122.5
2   85.83   130 -122.5
3   81.01   155 -122.5
4   NA  140 -122.5

我想将 data.frame2 添加到 data.frame1 的末尾,所以最后我有这样的内容:

ID  precip  lat lon
1   45  115 -122.5
2   42.5    130 -122.5
3   40  155 -122.5
4   37.5    140 -122.5
5   108.61  115 -122.5
6   85.83   130 -122.5
7   81.01   155 -122.5
8   NA  140 -122.5

【问题讨论】:

    标签: r dataframe


    【解决方案1】:

    我们可以使用rbind:

    cbindrbind:获取向量、矩阵或数据框参数的序列,并分别按列或行组合。

    # dataframe 1
    df1 <- read.table(text = "
    ID  precip  lat lon
    1   45  115 -122.5
    2   42.5    130 -122.5
    3   40  155 -122.5
    4   37.5    140 -122.5
    ", header = TRUE)
    # dataframe 2
    df2 <- read.table(text = "
    ID precip  lat lon
    1   108.61  115 -122.5
    2   85.83   130 -122.5
    3   81.01   155 -122.5
    4   NA  140 -122.5
    ", header = TRUE)
    
    # combine by row
    df3 <- rbind(df1, df2)
    
    # update ID column
    df3$ID <- 1:nrow(df3)
    
    # output
    df3
    #   ID precip lat    lon
    # 1  1  45.00 115 -122.5
    # 2  2  42.50 130 -122.5
    # 3  3  40.00 155 -122.5
    # 4  4  37.50 140 -122.5
    # 5  5 108.61 115 -122.5
    # 6  6  85.83 130 -122.5
    # 7  7  81.01 155 -122.5
    # 8  8     NA 140 -122.5
    

    【讨论】:

      猜你喜欢
      • 2017-06-24
      • 2020-12-04
      • 2013-12-08
      • 1970-01-01
      • 2021-03-20
      • 2016-08-12
      • 1970-01-01
      • 1970-01-01
      • 2021-01-16
      相关资源
      最近更新 更多