我试图o每次通过lapply
运行函数时输出列表名称。我发布了之前发布的question earlier,并且由@Ananda Mahto提供的答案正常工作,直到我将我的R
升级到版本3.2.0。它不再工作,我得到了以下错误消息:Error in eval.parent(quote(names(X)))[substitute(x)[[3]]] : invalid subscript type 'symbol'
在lapply中迭代时打印列表名称不工作3.2
x <- ts(rnorm(40,5), start = c(1961, 1), frequency = 12)
y <- ts(rnorm(50,20), start = c(1971, 1), frequency = 12)
z <- ts(rnorm(50,39), start = c(1981, 1), frequency = 12)
a <- ts(rnorm(50,59), start = c(1991, 1), frequency = 12)
dat.list <- list(x=x,y=y,z=z,a=a)
abc <- function(x) {
r <- mean(x)
print(eval.parent(quote(names(X)))[substitute(x)[[3]]])
return(r)
}
forl <- lapply(dat.list, abc)
我不知道问题是什么,但我查的0没有新版本的所有语法发生了变化。任何帮助是极大的赞赏。我也愿意接受任何新的想法。
太棒了,谢谢。与我的问题中概括的te方法相比,你的方法很快。任何想法为什么这可能是?非常感激。 – forecaster
如果我不得不猜测,也许是因为我没有处理任何东西来确定要打印的字符串。但是我没有对它进行简介,所以我不确定。很高兴听到它适合你。 – r2evans