将标签作为新列添加到R中的列表

问题描述 投票:0回答:1

你可以帮我把列表中的标签设置为R中的新数据帧。例如,x是我的列表。 head(x)给我以下输出:

head(x)
[[1]]
  A B
  0 0 

[[2]]
  C D E F
  0 1 0 0

我想创建一个这样的数据框:

enter image description here

任何帮助,将不胜感激! TIA!

r
1个回答
1
投票

实际上,除非您的列表是data.frame,否则没有要命名的行。在你的cbind之前尝试x <- as.data.frame(x)

回答更新的问题:

l1 <- c(A=0, B=1)
l2 <- c(C=0,D=1,E=0,F=0)

x <- list(l1,l2)

x <- as.data.frame(c((x[[1]]), (x[[2]])))
colnames(x) <- c("X")

输出:

  X
A 0
B 1
C 0
D 1
E 0
F 0

在这里,您可以使用原始代码:

x <- cbind(EMAIL=rownames(x), x)

哪个输出:

  EMAIL X
A     A 0
B     B 1
C     C 0
D     D 1
E     E 0
F     F 0
© www.soinside.com 2019 - 2024. All rights reserved.