2012-12-12 116 views
1
df 

Date  Ovserv Team 
1/1/2012 10  USA 
1/2/2012 30  USA 
1/3/2012 28  USA 
1/4/2012 79  USA 
1/5/2012 24  USA 
1/1/2012 45  Japan 
1/2/2012 10  Japan 
1/3/2012 56  Japan 
1/4/2012 60  Japan 
1/5/2012 67  Japan 

我真的很喜歡黃土,只要我可以使用它。我正在處理各種不同的數據幀,我嘗試使用黃土方法來繪製圖形。然而,由於一些不一致的地方(沒有足夠的數據點的一些數據幀),我收到此錯誤:如果黃土方法返回錯誤使用glm方法

Error in predLoess(object$y, object$x, newx, object$s, object$weights, 

是否有可能在我使用ggplot2方法得到錯誤的情況下使用method="glm"「黃土「?

ggplot(df, (Date, Observ, group=Team, colour=Team)) + 
    geom_smooth(method="loess", se=T, size=1) 

任何想法,我會如何解決這個問題?

+0

檢查數據幀是否具有足夠的大小,如果大小足夠大,只添加'geom_smooth'層。 – joran

回答

6

如果沒有足夠的黃土數據,聲明class(try(loess(y~x, df)))=="try-error"將給TRUE

你可以試一下沿

ggplot(....) + geom_smooth(method=ifelse(class(try(loess(y~x, df)))=="try-error", 
              "glm","loess")....) 

該行,並增加silent=TRUEtry參數,如果你不希望看到的錯誤消息。