我想使用for循环绘制一些数据集。 我使用
制作一个列表dflist <- c('Set1', 'Set2','Set3', 'Set4')
然后我尝试做:
for (i in dflist) {
plot(i$var1,i$var2)
}
哪个不起作用。 有人能把我排除在外吗?
答案 0 :(得分:1)
尝试使用 dflist&lt; -list(set1,set2),否则你会得到dflist中单个var1和var2向量的列表
答案 1 :(得分:1)
您可以使用get
来获取与提供的名称相关联的对象。
# two data frames
a = data.frame(x=1:10,y=sqrt(1:10)); b=data.frame(x=1:10,y=exp(1:10))
par(mfrow=c(2,1))
dfs = c('a', 'b')
for (i in dfs){
plot(get(i)$x, get(i)$y, type='o')
}
或apply
以避免循环,将自定义函数应用于列表中的每个项目。
par(mfrow=c(2,1))
dflist = list(a,b)
lapply(X=dflist, FUN = function(x) plot(x$x, x$y, type='o')