如何重塑列表中的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