Asignación - como faltantes NA a los 5 datos mas extremos -Con la libreria mice rellenar los datos faltantes -volver a ajustar el modelo lineal y comparar el R2

library(readxl)
## Warning: package 'readxl' was built under R version 4.0.4
ANCOVA_mice<- read_excel("~/R/design/Mice.xlsx"); head(ANCOVA_mice)
## # A tibble: 6 x 5
##       X     Y Fertilizantes    MO Proteina
##   <dbl> <dbl> <chr>         <dbl>    <dbl>
## 1     1     1 D0             2.24     4.15
## 2     2     1 D5             1.99     4.76
## 3     3     1 D10            1.82     5.10
## 4     4     1 D15            2.36     4.99
## 5     5     1 D0             2.32     5.14
## 6     6     1 D5             2.38     5.19
#Datos 
Mo<-ANCOVA_mice$MO
Prot<-ANCOVA_mice$Proteina
fert<-ANCOVA_mice$Fertilizantes
x<-ANCOVA_mice$X
y<-ANCOVA_mice$Y

# Total de NA en los datos 
sum(is.na(ANCOVA_mice))
## [1] 5
library(mice)
## Warning: package 'mice' was built under R version 4.0.5
## 
## Attaching package: 'mice'
## The following object is masked from 'package:stats':
## 
##     filter
## The following objects are masked from 'package:base':
## 
##     cbind, rbind
columns <- c("Proteina","MO")
imputed_data <- mice(ANCOVA_mice[,names(ANCOVA_mice) %in% columns],m = 1,
  maxit = 1, method = "mean",print=F)
complete.data_ka <- mice::complete(imputed_data) 
prt2<-complete.data_ka$Proteina
prt2
##  [1] 4.152665 4.760998 5.101513 4.987683 5.142567 5.185140 5.695623 5.444234
##  [9] 5.733434 5.755230 5.677692 5.626676 5.598141 5.607175 5.819383 5.977163
## [17] 5.965704 5.794938 6.202655 5.794938 5.933305 6.467691 6.099083 6.172753
## [25] 6.303712 6.623972 5.794938 5.794938 5.833666 6.242823 6.358568 6.042403
## [33] 6.737814 5.794938 5.950471 6.443134
#Ajuste del modelo: Minimos cuadrados 
mod1 = lm(prt2~Mo)
summary(mod1)
## 
## Call:
## lm(formula = prt2 ~ Mo)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.12617 -0.30092  0.04827  0.21030  0.77967 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   3.8193     0.3561  10.727 1.88e-12 ***
## Mo            0.6513     0.1155   5.641 2.52e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3848 on 34 degrees of freedom
## Multiple R-squared:  0.4835, Adjusted R-squared:  0.4683 
## F-statistic: 31.82 on 1 and 34 DF,  p-value: 2.521e-06
res1<-mod1$residuals
shapiro.test(res1)
## 
##  Shapiro-Wilk normality test
## 
## data:  res1
## W = 0.96361, p-value = 0.2771
coef = round(mod1$coefficients, 2);coef
## (Intercept)          Mo 
##        3.82        0.65
atan(coef[2])*180/pi
##       Mo 
## 33.02387
hist(res1);plot(res1, pch = 19)

mod2<- aov(prt2 ~ Mo + fert); summary(mod2)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Mo           1  4.712   4.712  29.921 5.58e-06 ***
## fert         3  0.153   0.051   0.323    0.809    
## Residuals   31  4.882   0.157                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
res2<-mod1$residuals
shapiro.test(res2)
## 
##  Shapiro-Wilk normality test
## 
## data:  res2
## W = 0.96361, p-value = 0.2771
boxplot(prt2 ~ fert)

library(mvoutlier)
## Warning: package 'mvoutlier' was built under R version 4.0.5
## Loading required package: sgeostat
## Registered S3 method overwritten by 'GGally':
##   method from   
##   +.gg   ggplot2
## sROC 0.1-2 loaded
corr.plot(Mo, prt2)

## $cor.cla
## [1] 0.6953084
## 
## $cor.rob
## [1] 0.6158389
chisq.plot(cbind(Mo, prt2))

## Remove outliers with left-click, stop with right-click on plotting device
## $outliers
## NULL
color.plot(cbind(Mo, prt2))

## $outliers
##  [1]  TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [13] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [25] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## 
## $md
##  [1] 4.2227277 2.5490260 2.0676848 2.0209716 1.6660210 1.5611913 0.8220103
##  [8] 0.9758213 0.7381415 0.5613393 0.5018113 0.8432943 0.9631971 0.6979591
## [15] 0.7652339 0.3690713 0.4003065 0.4315777 1.3584362 0.6332372 0.9944610
## [22] 2.1175247 0.5828309 0.7841266 1.1699200 1.9605837 0.9237652 0.9049790
## [29] 1.2969178 1.0874739 1.2224228 1.3820444 2.2017390 0.9705705 1.7578216
## [36] 1.5792929
## 
## $euclidean
##  [1] 1.705472 1.705125 2.037450 2.484556 2.628058 2.769432 3.705577 3.373193
##  [9] 3.830306 3.983589 4.304715 4.428104 4.428390 4.201198 4.003848 4.721953
## [17] 4.646211 4.145402 4.793051 4.022871 4.173341 5.215427 5.142200 5.216433
## [25] 5.377170 6.030662 5.024777 5.011238 5.396847 5.911306 5.639916 5.919004
## [33] 6.328256 5.058584 6.013924 6.530478
chisq.plot(cbind(Mo, prt2))

## Remove outliers with left-click, stop with right-click on plotting device
## $outliers
## NULL
color.plot(cbind(Mo, prt2))

## $outliers
##  [1]  TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [13] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [25] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## 
## $md
##  [1] 4.2227277 2.5490260 2.0676848 2.0209716 1.6660210 1.5611913 0.8220103
##  [8] 0.9758213 0.7381415 0.5613393 0.5018113 0.8432943 0.9631971 0.6979591
## [15] 0.7652339 0.3690713 0.4003065 0.4315777 1.3584362 0.6332372 0.9944610
## [22] 2.1175247 0.5828309 0.7841266 1.1699200 1.9605837 0.9237652 0.9049790
## [29] 1.2969178 1.0874739 1.2224228 1.3820444 2.2017390 0.9705705 1.7578216
## [36] 1.5792929
## 
## $euclidean
##  [1] 1.705472 1.705125 2.037450 2.484556 2.628058 2.769432 3.705577 3.373193
##  [9] 3.830306 3.983589 4.304715 4.428104 4.428390 4.201198 4.003848 4.721953
## [17] 4.646211 4.145402 4.793051 4.022871 4.173341 5.215427 5.142200 5.216433
## [25] 5.377170 6.030662 5.024777 5.011238 5.396847 5.911306 5.639916 5.919004
## [33] 6.328256 5.058584 6.013924 6.530478