場所/銀行(sb$NoSpec.mean
)あたりの平均種数が種数/年(sb$NoSpec.var
)の分散で重み付けされている、加重対数 - 線形線形モデルの指数関数形式を使用して指数種 - 面積関係をプロットする必要があります。私の加重対数 - 線形回帰の信頼バンドをプロットする方法は?
私はフィットをプロットすることができますが、このフィットの周りに信頼区間をプロットする方法を考え出す問題があります。以下は私が今までに思いついた最高のものです。私のアドバイスは?
# Data
df <- read.csv("YearlySpeciesCount_SizeGroups.csv")
require(doBy)
sb <- summaryBy(NoSpec ~ Short + Area + Regime + SizeGrp, df,
FUN=c(mean,var, length))
# Plot to fill
plot(S ~ A, xlab = "Bank Area (km2)", type = "n", ylab = "Species count",
ylim = c(min(S), max(S)))
text(A, S, label = Pisc$Short, col = 'black')
# The Arrhenius model
require(vegan)
gg <- data.frame(S=S, A=A, W=W)
mloglog <- lm(log(S) ~ log(A), weights = 1/(log10(W + 1)), data = gg)
# Add exponential fit to plot (this works well)
lines(xtmp, exp(predict(mloglog, newdata = data.frame(A = xtmp))),
lty=1, lwd=2)
は今、私は私が問題...
## predict using original model.. get standard errors
pp<-data.frame(A = xtmp)
p <- predict(mloglog, newdata = pp, se.fit = TRUE)
pp$fit <- p$fit
pp$se <- p$se.fit
## Calculate lower and upper bounds for each estimate using standard error * 1.96
pp$upr95 <- pp$fit + (1.96 * pp$se)
pp$lwr95 <- pp$fit - (1.96 * pp$se)
を見つけることだ。しかし、私は次のことが正しいかどうかを確認していない場所です...信頼帯を追加したいです。 google/stack overflow/cross validatedを検索すると、ggplot
が含まれていない回答は見つかりませんでした。
## Create new linear models to create a fitted line given upper and lower bounds?
upr <- lm(log(upr95) ~ log(A), data=pp)
lwr <- lm(log(lwr95) ~ log(A), data=pp)
lines(xtmp, exp(predict(upr, newdata=pp)), lty=2, lwd=1)
lines(xtmp, exp(predict(lwr, newdata=pp)), lty=2, lwd=1)
ご協力いただきありがとうございます!
:
今、あなたは簡単に素敵な回帰プロットを生成するために
matplot
を使用することができます。代わりに、データの適切なサブセットで 'dput'を呼び出す結果を編集します。 – alistaireありがとう、Alistaire。次の時間は病気を覚えています。 –