将数据框转换为变量

时间:2019-07-12 04:02:50

标签: r dataframe

我有一个数据框,想将值转换为变量。

我已经尝试过使用as.numeric(unlist ...)将它们一个接一个地拉出来(这不是一个很大的列表),但是我正在寻找一种更好的方法。

这是我的数据

dataframe = structure(list(V1 = c(564.58, 7834.1, 134.2), file = structure(c(2L, 
1L, 3L), .Label = c("Blue", "Red", "Yellow"), class = "factor")), class = "data.frame", row.names = c(NA, 
-3L))

我正在寻找这个:

Red = 564.58
Blue = 7834.1
Yellow = 134.2

有人可以建议一种更好的方法吗?

1 个答案:

答案 0 :(得分:2)

以下应该起作用。使用V1将值as.list放入列表中,使用file将名称设置为setNames,然后使用{{1 }}:

list2env

在回答后,我还应该提到不鼓励这样做。爆炸矢量化数据以使用许多变量污染您的环境几乎没有什么好处,但是有很多缺点。关于list2env(setNames(as.list(df$V1), df$file), .GlobalEnv) 的讨论也适用于assign。您可以here来了解它。