我需要修改lm(或最终loess)函数,以便可以在 ggplot2 geom_smooth(或stat_smooth)中使用它。
例如,这是stat_smooth正常使用的方式:
> qplot(data=diamonds, carat, price, facets=~clarity) + stat_smooth(method='lm')`
我想定义一个自定义lm2函数用作methodin 参数的值stat_smooth,这样我就可以自定义它的行为。
> lm2 <- function(formula, data, ...)
{
print(head(data))
return(lm(formula, data, ...))
}
> qplot(data=diamonds, carat, price, facets=~clarity) + stat_smooth(method='lm2')
请注意,我已method='lm2'在stat_smooth. 当我执行此代码时,出现错误:
eval 中的错误(expr,envir,enclos):“nthcdr”需要一个列表来 CDR 下来
我不太明白。该lm2方法在stat_smooth. 我玩了一下,遇到了不同类型的错误,但由于我对 R 的调试工具不满意,所以我很难调试它们。老实说,我不明白我应该在return()电话中输入什么。