图表,我已经下来了。挑战是我有 _exact_same_code_ 用于绘制多个数据集(更确切地说,是一个 LARGE 数据集的子集),但我似乎无法正确获取循环代码来正确替换 $。
数据集,df1, df2, df3...的形式:
OBSDATE REGION AVG_RESP P10 P90
2012-02-01 APAC 1.276 0.78 3.45
2012-02-01 EMEA 2.341 1.23 5.67
2012-02-02 APAC 1.343 0.89 3.21
2012-02-02 EMEA 2.473 1.37 5.98
该图更复杂,但像这样:
avgMx <- quantile(df1$P90,0.95)
ggplot(df1,aes(x=OBSDATE,y=AVG_RESP))+coord_cartesian(ylim=c(0,avgMx))+geom_ribbon(aes(ymin=P10,ymax=P90),fill="gray60",alpha=0.33)+geom_line(aes(x=OBSDATE,y=AVG_RESP),color="#007DB1",size=0.5)+facet_wrap(~REGION)
如果我用数据集名称定义一个向量或列表(两者似乎都失败并显示相同的错误消息),我无法让循环工作以找到任何描述性值(如上面的分位数甚至最大值!)
filenames <- c("df1","df2","df3")
我想让这样的东西工作
for (i in filenames) {
quantile(i$AVG_RESP,0.95)
max(i$AVG_RESP)
}
但是我得到关于 $ 对原子向量无效的错误。经过调查,这似乎没有产生任何可用的结果。
所以,我可以让它工作:
max(df1$AVG_RESP) or max(df1['AVG_RESP'])
他们都会从上面输出 2.473。但是,这不会飞:
for (i in pagesC) max(i['AVG_RESP'])
它什么也不做。将其更改为:
for (i in pagesC) print(max(i['AVG_RESP']))
给出 NA 的实例。
我完全被困住了。任何帮助将不胜感激!
编辑:我修复了导致错误的数据 - 现在应该可以重现了。