如何重塑列表中的data.frames?

如何重塑列表中的data.frames?,r,reshape,transpose,reshape2,R,Reshape,Transpose,Reshape2,我有一张这样的清单 A <- data.frame(a = c(1, 2), b = c(3, 4)) B <- data.frame(c = c(1, 2), d = c(3, 4)) g <- list(var1 = A, var2 = B) lapply(g, function(x) data.frame(t(x))) 现在我想像这样转置列表元素 A <- data.frame(a = c(1, 2), b = c(3, 4)) B <- data.fra

我有一张这样的清单

A <- data.frame(a = c(1, 2), b = c(3, 4))
B <- data.frame(c = c(1, 2), d = c(3, 4))
g <- list(var1 = A, var2 = B)
lapply(g, function(x) data.frame(t(x)))
现在我想像这样转置列表元素

A <- data.frame(a = c(1, 2), b = c(3, 4))
B <- data.frame(c = c(1, 2), d = c(3, 4))
g <- list(var1 = A, var2 = B)
lapply(g, function(x) data.frame(t(x)))
但这会产生a,b,cd,作为行名,这不是我想要的

> lapply(g, function(x) data.frame(t(x)))
$var1
  X1 X2
a  1  2
b  3  4

$var2
  X1 X2
c  1  2
d  3  4

我想在a、b、c和d的data.frames中生成一个新列。如何实现这一点?

第1点:如果要转置数据,很可能意味着应该使用数组,而不是data.frames

但是,如果这确实是您想要做的,那么只需在列名中添加
cbind()

lapply(g, function(x) as.data.frame(cbind(colnames(x), t(x))))
$var1
  V1 V2 V3
a  a  1  2
b  b  3  4

$var2
  V1 V2 V3
c  c  1  2
d  d  3  4