y<-c( 5.06, 5.01, 5.12, 5.13, 5.14, 5.16, 5.25, 5.19, 5.24, 5.46, 5.40, 5.57, 5.47, 5.53, 5.61, 5.59, 5.61, 5.75, 5.68, 5.80) x<-c( 0.0,0.2, 0.4, 0.6, 0.8, 1.0, 1.2, 1.4, 1.6, 1.8, 2.0, 2.2, 2.4, 2.6, 2.8, 3.0, 3.2, 3.4, 3.6, 3.8) windows() plot(x,y) #funzione di R #metodo scolastico calcolo statistiche di base n<-length(y) n mx<-mean(x) mx my<-mean(y) my vy<-var(y)*(n-1)/n vy vx<-var(x)*(n-1)/n vx mxy<-mean(x*y) mxy vxy<-mxy-mx*my vxy #stima intercetta e coeff. angolare b<-vxy/vx b a<-my-b*mx a #calcolo var residua r2<-vxy^2/vx/vy r2 stilde<-vy*(1-r2)*n/(n-2) stilde sqrt(stilde) yhat<-a+b*x windows() plot(x,y,type="b") points(x,yhat,col="red",type="b") stilde2<-sum((y-yhat)^2)/(n-2) #inferenza su coeff. angolare H_0: beta1=0.2 alpha=0.01 #alternativa dx vb<-stilde2/n/vx test<-(b-0.2)/sqrt(vb) perc<-qt(0.99,n-2) pvalue<-1-pt(test,n-2) perc test pvalue #inferenza su coeff. angolare #IC 0.99################## ########################################################## vb<-stilde/n/vx perc<-qt(0.995,n-2) L<-b-perc*sqrt(vb) U<-b+perc*sqrt(vb) c(L,b,U) #inferenza su intercetta beta0 =5 alternativ bil alpha=0.01 va<-stilde2*(1/n+mx^2/n/vx) testa<-(a-5)/sqrt(va) perca<-qt(0.995,n-2) pvaluea<-2*(1-pt(abs(testa),n-2)) perca testa pvaluea #IC su beta0 0.99################################## ################################################### va<-stilde*(1/n+mx^2/n/vx) perca<-qt(0.995,n-2) L<-a-sqrt(va)*perca U<-a+sqrt(va)*perca c(L,a,U) #inferenza su valore atteso beta_0+beta_1*0.2=5 alt dx alpha=0.05 y_02<-a+b*0.2 v_02<-stilde*(1/n+(0.2-mx)^2/n/vx) perc<-qt(0.95,n-2) testy<-(y_02-5)/sqrt(v_02) pvalueU<-1-pt(testy,n-2) perc testy pvalueU #intervallo conf illimitato dx per mu= beta_0+beta_1*0.2 alpha=0.05 L<-y_02-perc*sqrt(v_02) c(L,Inf) #intervallo confidenza illimitato sx U<-y_02+perc*sqrt(v_02) c(-Inf,U) #intervallo confidenza bilaterale percbil<-qt(1-0.05/2,n-2) U<-y_02+percbil*sqrt(v_02) L<-y_02-percbil*sqrt(v_02) c(L,U) ####SCOLASTICO PROPEDEUTICO PER CHI USA LA CALCOLATRICE #creazione tabella lavoro table<-cbind(x,y,x^2,y^2,x*y,a+b*x,y-a-b*x) tableT<-rbind(table,colSums(table),colSums(table)/n) colnames(tableT)<-c("x","y","x^2","y^2","x*y","fitted","res") tableT #salvataggio file formato .tex serve library xtable e poi latex per compilarlo #library(xtable) #colnames(working.table)<-c("x","y","x^2","y^2","x*y") #edit(working.table) #workreg<-xtable(tableT,caption="regressione-tabella di lavoro",digits=4) #print(workreg,file="regress.tex") #garfici #windows() plot(x,y,type="b") abline(a=a,b=b,col="red") #windows() plot(y-a-b*x,type="b") abline(a=0,b=0) #funzione lm res<-lm(y~x) summary(res)