从数据框中提取变量值的函数

时间:2015-10-19 18:26:06

标签: r member-variables

我有包含variable_name和variable_values的R data.frame。我正在编写一个函数来提取每个variable_name并分配相应的 variable_values并将其保存在内存中供以后使用。但是,我不断收到错误消息,例如“as.name(df)< - df [i,2]中的错误:找不到函数”as.name< - “ 你能帮忙吗?

实施例:     df <- data.frame(name=c("Jane", "Bush","Bob", "Job"), age=c(12 , 34, 20, 50))

我想为每个名字分配相应的年龄。

Jane <- 12 Bush <- 34 Bob <- 20 Job <- 50

这是我开始的代码:

splitobs <- function(df){
for(i in 1:nrow(df)){
noquote(as.name(df[i, 1]) <- df[i, 2]
print()
   }
}

splitobs(df)enter code here

1 个答案:

答案 0 :(得分:0)

我们将'age'的名称设置为'name',转换为hold on;并使用list在全局环境中创建多个对象(虽然不推荐)。

list2env

或在 list2env(as.list(setNames(df$age, df$name)), envir=.GlobalEnv) Jane #[1] 12 循环中使用assign

for