2013-01-06 74 views
-4

如果我的數據是逗號分隔值(持續時間)的一長排,則R可以通過從一維數據繪製置信區間?

summary(dat) 

問題給我很多信息

能R還使一個陰謀有置信區間的數據?

+2

這可能取決於什麼populat離子參數是否需要置信區間,無論是自舉還是假設數據的底層分佈等等。 –

+4

你有沒有持續時間的矢量?沒有解釋變量?那麼你所能做的只是一個平均值和一個方差(好吧,偏度和峯度,以及所有這一切)。置信區間是什麼? – Spacedman

回答

0

作爲第一款谷歌比賽說明,你可以嘗試做如下:

n<-50 
x<-sample(40:70,n,rep=T) 
y<-.7*x+rnorm(n,sd=5) 
plot(x,y,xlim=c(20,90),ylim=c(0,80)) 
mylm<-lm(y~x) 
abline(mylm,col="red") 
newx<-seq(20,90) 
prd<-predict(mylm,newdata=data.frame(x=newx),interval = c("confidence"), 
level = 0.90,type="response") 
lines(newx,prd[,2],col="red",lty=2) 
lines(newx,prd[,3],col="red",lty=2) 

當然這是可能性之一 另一個例子是:

x <- rnorm(15) 
y <- x + rnorm(15) 
new <- data.frame(x = seq(-3, 3, 0.5)) 

pred.w.clim <- predict(lm(y ~ x), new, interval="confidence") 


# Just create a blank plot region with axes first. We'll add to this 
plot(range(new$x), range(pred.w.clim), type = "n", ann = FALSE) 


# For convenience 
CI.U <- pred.w.clim[, "upr"] 
CI.L <- pred.w.clim[, "lwr"] 

# Create a 'loop' around the x values. Add values to 'close' the loop 
X.Vec <- c(new$x, tail(new$x, 1), rev(new$x), new$x[1]) 

# Same for y values 
Y.Vec <- c(CI.L, tail(CI.U, 1), rev(CI.U), CI.L[1]) 

# Use polygon() to create the enclosed shading area 
# We are 'tracing' around the perimeter as created above 
polygon(X.Vec, Y.Vec, col = "grey", border = NA) 


# Use matlines() to plot the fitted line and CI's 
# Add after the polygon above so the lines are visible 
matlines(new$x, pred.w.clim, lty = c(1, 2, 2), type = "l", col = 
c("black", "red", "red")) 

Example 1

Example 2

+2

任何解釋這個問題如何回答問題的機會?我們甚至無法理解這個問題,並且你已經掌握了x和y以及各種各樣的東西。你可能是某種心理...... – Spacedman

+0

的問題是 「R還可以用置信區間來繪製數據圖嗎?」正如OP的文章所述;所以答案是「是」,它是如何做到的?提供的例子(例1,例2) - OP的問題是如何修改它以適應她的需求;我想,並且正如OP接受的答案所示,這是問題的含義,OP想知道是否(如果是 - 如何)與CI一起繪製R –

+0

如果OP精煉了問題將會很好說明這一切。我們所有的證據都是綠色的。 「數據圖」也可以是直方圖,「置信區間」是95%的分位數。你假設了很多。可憐的問題仍然很糟糕。 – Spacedman