簡體   English   中英

在 boxplot r 中添加回歸線

[英]Add regression line in boxplot r

我使用下面的代碼在箱線圖后添加回歸線。

boxplot(yield~Year, data=dfreg.raw,
        ylab = 'Yield (bushels/acre)',
        col = 'orange')
yield.year <- lm(yield~Year, data = dfreg.raw)
abline(reg = yield.year)

然而,回歸線並沒有出現。 我得到的情節在下面在此處輸入圖片說明

我的數據看起來像這樣。 這是一個面板數據,最終可能會出現回歸線問題。

> head(dfreg.raw)
# A tibble: 6 x 15
  index  Year yield State.Code  harv frez_j  dd_j cupc_j sm7_j fitted_j max_spring_j sp_spring_j
  <dbl> <dbl> <dbl>      <dbl> <dbl>  <dbl> <dbl>  <dbl> <dbl>    <dbl>        <dbl>       <dbl>
1 16001  1984 105           16  7200   330. 2438.   7.32  53.4     49.1         19.7       0.863
2 16001  1985  96.8         16  8200   413. 2407.   5.71  52.5     48.4         23.9      -0.391
3 16001  1986  94.9         16  7400   476. 2638.   8.34  52.5     48.4         23.4      -0.122
4 16001  1987 106.          16  9700   154. 2838.   5.44  54.4     49.9         25.6      -0.485
5 16001  1988  89.6         16  7600   184. 2944.   3.28  54.5     50.0         23.9       0.115
6 16001  1989  96.4         16  7300   383. 2766.   5.91  52.6     48.4         23.5      -1.02 
# … with 3 more variables: pc_spring_j <dbl>, lt <dbl>, qt <dbl>


有人對此有任何想法嗎?

x 值為 1:max(x 變量的級別),因此 abline 不起作用。 你可以在下面嘗試這樣的事情。

首先模擬一個數據集:

dfreg.raw= data.frame(
yield=rpois(100,lambda=rep(seq(60,100,by=10),each=20)),
Year=rep(1995:1999,each=20)
)

然后情節:

boxplot(yield~Year, data=dfreg.raw,
        ylab = 'Yield (bushels/acre)',
        col = 'orange')
yield.year <- lm(yield~Year, data = dfreg.raw)

獲得一個唯一的年份上升向量,並預測

X = sort(unique(dfreg.raw$Year))
lines(x=1:length(X),
y=predict(yield.year,data.frame(Year=X)),col="blue",lty=8)

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM