【发布时间】:2017-12-06 19:28:05
【问题描述】:
我正在尝试将向量列表转换为数据框,其中有一个公司名称列和 MPE 列。我的列表是通过为每个公司运行以下代码生成的:
MPE[[2]] <- c("Google", abs(((forecasted - goog[nrow(goog),]$close)
/ goog[nrow(goog),]$close)*100))
现在,我无法将其放入适当的数据框以进行进一步操作。最简单的方法是什么?
这是一个向量示例列表,我希望将其处理到一个数据框中,其中一列是公司名称,第二列是数字。
test <- list(c("Google", 2))
test[[2]] <- c("Microsoft", 3)
test[[3]] <- c("Apple", 4)
【问题讨论】:
-
如果你能提供一个可重现的例子,回答你的问题会更容易。在这种情况下,代码会生成一个向量列表,看起来像您想要折叠到数据框中的那个。
-
由于
c创建的向量只能包含一种类型,因此您将数字强制转换为字符串。您可以像这样解决问题:test_df <- as.data.frame(do.call(rbind, test), stringsAsFactors = FALSE); test_df[] <- lapply(test_df, type.convert, as.is = TRUE)
标签: r dataframe data-manipulation