# Dati tratti da: #http://openmv.net/info/cheddar-cheese #Cheddar cheese #Description: Concentrations of acetic acid, H2S, and lactic acid in 30 samples of mature cheddar #cheese. A subjective taste value is also provided. #################################################################################################### originale<-read.csv("cheddar-cheese.csv",header=T,sep=",") head(originale) #Genero un predittore aggiuntivo, collineare a "Lactic" (a titolo esemplificativo) set.seed(7) MolFake<-originale$Lactic+(runif(n,min=0.1,max=0.3)) originale2<-data.frame(originale,MolFake=MolFake) #------------------------------------------------------------------------------------- # Analisi esplorativa del dataset summary(originale2) plot(originale2[,-1]) # Tolgo la prima colonna che indica solo il numero di campione # Valutazione correlazioni tra predittori COR<-cor(originale2[,c(2,3,4,6)])# La colonna 5 contiene la variabile Y (Taste) round(COR,digit=1) library(corrplot) corrplot(COR) #------------------------------------------------------------------------------------- # Regressioni bivariate Y vs predittore Model1<-lm(Taste~Acetic,data=originale2) summary.lm(Model1) #-- qui sotto predittore H2S Model2<-lm() summary.lm(Model2) #-- qui sotto predittore Lactic Model3<-lm() summary.lm(Model3) #-- qui sotto predittore MolFake Model4<-lm() summary.lm(Model4) #------------------------------------------------------------------------------------- # Regressioni multilineari Model5<-lm(Taste~.,data=originale2)#il punto indica di usare tutti i predittori summary.lm(Model5) library(car) vif(Model5) # Scelgo solo uno dei predittori multicollineari: Lactic Model6<-lm(Taste~Acetic+H2S+Lactic,data=originale2) summary.lm(Model6) vif(Model6) # Costruire il modello con Acetic,H2S e l'altro predittore multicollineari: MolFake Model7<-lm( ) summary.lm(Model7) vif(Model7) # Regressioni multilineari con 2 predittori Model8<-lm(Taste~H2S+Lactic,data=originale2) summary.lm(Model8) vif(Model8) #----- # Provare un altro modello con 2 predittori (a piacere) Model9<-lm(Taste~ ,data=originale2) summary.lm(Model9) vif(Model9)