如何将具有不同行数的列附加到R中的数据框中?

Mos*_*afa 1 r vector

假设有一个固定行数的数据框,例如

a <- as.data.frame(c(1:7))
Run Code Online (Sandbox Code Playgroud)

还有另一个行数较少(或较多)的向量:

b <- c(1:4)
Run Code Online (Sandbox Code Playgroud)

那么就不可能将 b 作为新列添加到 a 中:

a <- cbind(a, b)
Run Code Online (Sandbox Code Playgroud)

这是输出:

Error in data.frame(..., check.names = FALSE) : 
  arguments imply differing number of rows: 7, 4
Run Code Online (Sandbox Code Playgroud)

预期结果如下:

1      1      1
2      2      2
3      3      3
4      4      4
5      5     NA
6      6     NA
7      7     NA
Run Code Online (Sandbox Code Playgroud)

akr*_*run 5

我们可以使用cbind.fillfrom轻松做到这一点rowr

rowr::cbind.fill(a, b, fill = NA)
Run Code Online (Sandbox Code Playgroud)