在R中将每一行从一个数据绑定到另一个

时间:2019-02-07 17:13:07

标签: r cbind

我的数据集如下:

df1<-t(data.frame(1,2,3))
df2<-t(data.frame(4,5,6))
colnames(df1)<-c('A')
colnames(df2)<-c('B')
> df1
   A
X1 1
X2 2
X3 3
> df2
   B
X4 4
X5 5
X6 6

如何将df1中的每一行合并到df2中,以便获得类似这样的内容:

A  B  
1  4
1  5
1  6
2  4
2  5
2  6
3  4
3  5
3  6

谢谢!

2 个答案:

答案 0 :(得分:4)

您可以使用expand.grid

expand.grid(A = df1, B = df2)
  A B
1 1 4
2 2 4
3 3 4
4 1 5
5 2 5
6 3 5
7 1 6
8 2 6
9 3 6

答案 1 :(得分:1)

这个问题可能是重复的。这是三种类似的解决方案:

  • merge(df1, df2)
  • expand.grid(A = df1, B = df2)
  • tidyr::crossing(A = df1, B = df2)