【发布时间】:2014-03-09 17:25:13
【问题描述】:
我想在 lapply 函数中创建一个包含对象名称的列,作为代理,我将其称为 name.of.x.as.strig.function(),不幸的是我不知道该怎么做,可能是assign、do.call 和paste 的组合。但到目前为止,使用这个功能只会让我陷入更深的麻烦,我很确定还有一个更像 R 的解决方案。
# generates a list of dataframes,
data <- list(data.frame(c(1,2),c(3,3)),data.frame(c(1,2),c(3,3)),data.frame(c(1,2),c(3,3)),data.frame(c(1,2),c(3,3)))
# assigns names to dataframe
names(data) <- list("one","two", "tree", "four")
# subsets the second column into the object data.anova
data.anova <- lapply(data, function(x){x <- x[[2]];
return(matrix(x))})
这应该允许我在数据框中为列表中的所有矩阵创建一个包含其名称的列
data.anova <- lapply(data, function(x){
x$id <- name.of.x.as.strig.function(x)
return(x)})
我想找回:
3 one
3 one
3 two
3 two
...
非常感谢任何输入。
搜索历史:将对象名称检索为字符串的函数,R 获取 lapply 中的对象名称...
【问题讨论】: