1

我根据“索引”拆分数据框以并排绘制每个组以进行比较:

Grp <- split(TOC, TOC$Index)

$`1`
   Site Index depth_ft TOC_mg.g IC_mg.g
1     Z     1        5       12      NA

$`1`
   Site Index depth_ft TOC_mg.g IC_mg.g
1     A     2        2       11      NA

... 
...

如果我一个一个去,我可以很容易地绘制数据,比如说

plot(Grp$`1`$TOC_mg.g, Grp$`1`$depth_ft)

但是当我想使用“lapply”一次绘制所有组时,我只看到 XY 轴没有任何数据点(https://docs.google.com/file/d/0B6GUNg-8d30vdmZBMVhKVlR0TkE/edit?usp=分享)!!谁能告诉我出了什么问题??

#plot
par(mfrow=c(1,5))
lapply(1:length(Grp), function(i) 
  plot(Grp$`i`$TOC_mg.g, Grp$`i`$depth_ft, ylim=c(0, max(TOC$depth_ft)), 
       xlim= c(min(TOC$TOC_mg.g, na.rm=T), max(TOC$TOC_mg.g, na.rm=T)), lwd=2, col=2 ))
4

1 回答 1

1

你应该使用Grp[[i]]$...而不是Grp$i$... 例如

lapply(1:length(Grp), function(i) 
  plot(depth_ft~TOC_mg.g,data=Grp[[i]], 
       ylim=c(0, max(TOC$depth_ft)), 
       xlim= c(min(TOC$TOC_mg.g, na.rm=T), max(TOC$TOC_mg.g, na.rm=T)), 
    lwd=2, col=2 ))

SO上有几篇关于$[[-indexing之间区别的帖子,但我目前找不到正确的咒语来搜索它们(搜索$并且[[效果不佳)。

于 2013-08-11T18:52:43.233 回答