stat_smooth行中的错误适合某些组导致无法生成绘图

时间:2011-10-23 20:53:20

标签: r ggplot2

我正在尝试为具有大量不同组的数据集绘制曲线。我想在一个图形上将所有曲线可视化到一个普通模型(stat_smooth with glm with a quasipoisson error),因此,我正在使用颜色对它们进行分组。但是,对于某些曲线,拟合函数会熄灭,我得到了

错误:未找到有效的系数集:请提供起始值

然后没有情节。

有没有办法让情节出现而没有那些“坏”群体的曲线?我问,因为有大量的组,虽然我可以编写一个错误检查脚本,然后将它们从数据中踢出来,但如果除了那些有错误的所有内容之外的所有内容都会更好。

1 个答案:

答案 0 :(得分:2)

我认为没有非常这么简单的方法,但这就是我想要的:

编写一个循环或ldply语句来运行您想到的模型,包含在try中:例如

trymodelList <- ldply(mydata,.(grp1,grp2),glm,formula=y~x,family="quasipoisson")

(我认为当前的数据块应该作为data参数自动填充。)

找出哪些是坏的:像alply(trymodelList,inherits,what="try-error")

使用此逻辑向量对您不需要的组进行子集化,然后将子集化数据传递给geom_smooth而不是完整数据集。

我知道有一些细节遗漏了......

编辑:我发现我基本上写下了“编写错误检查脚本......然后将其从数据中删除”策略。对不起,我认为有一种更简单的方法可以做到这一点。您可以尝试使用ggplot用户列表...