我有一个数据框列表。我正在尝试使用lapply为每个数据框生成一个图,以数据框的名称作为图标题。
例如,这有效,没有情节标题:
# example dataframes
df1=data.frame(a=c(1,2,3,4,5),b=c(5,4,3,2,1))
df2=data.frame(a=c(2,2,2,2,2),b=c(5,4,3,2,1))
# list of dataframes
dflist=list(df1,df2)
# set dataframe names
names(dflist)=c("df1","df2")
# plotting area
par(mfrow=c(1,2))
# plots
lapply(dflist, function(x) {
a<-x[,"a"]
b<-x[,"b"]
plot(b,a)
x})
要获得列表元素的名称,我希望答案会很简单:
lapply(dflist, function(x) {
a<-x[,"a"]
b<-x[,"b"]
plot(b,a,main=names(x))
x})
但这会获取每个数据帧中变量的名称。
我知道答案在这里的某个地方:
How to get the name of each element of a list using lapply()?
但是我没有运气尝试将解决方案应用于我的具体情况。