从列表中包含的字符串中命名df列

时间:2017-07-03 03:25:45

标签: r

如果我有示例列表This_keyword

Names

是否可以使用列表中包含的字符串之一创建列标题?例如,下面的代码尝试通过索引Names <- list(A = c("one", "two", "three"), B = c("three", "four", "five")) 来创建名为One的列,但显然不起作用。

Names[[1]][1]

任何建议将不胜感激。我试图用data.frame(Names[[1]][1] = rep(5, 5)) 包裹,但仍在寻找解决方案。实际数据正在循环中实现,需要as.character()索引。期望的结果如下所示。

Names

1 个答案:

答案 0 :(得分:1)

我们可以使用setnames将变量中的列名分配给数据帧:

setNames(data.frame(rep(5, 5)), Names[[1]][1]) 

#  one
#1   5
#2   5
#3   5
#4   5
#5   5

也可以用于多列。