Cutivo de Aguacate

Los datos corresponden a mediciones que se han hecho en árboles de producción de aguacate en el Cauca. Cada árbol tiene un identificador, adicionalmente estan Georeferenciados con la variable latitud y longitud.

La base de datos esta compuesta por Variables climaticas como:

1 Analisis exploratorio

Para el caso de estudio nos cetraremos en el analisis de la variable Temperatura y se tendra como fecha de referencia 01-10-2020.

Data$fecha <- as.Date(Data$FORMATTED_DATE_TIME, format = "%d/%m/%Y")
Data_20 <- filter(Data, fecha == "2020-10-01")

tabla <- (head(Data_20,5))

tabla %>%
  kbl() %>%
  kable_paper("hover", 
              full_width = F)
id_arbol Latitude Longitude FORMATTED_DATE_TIME Psychro_Wet_Bulb_Temperature Station_Pressure Relative_Humidity Crosswind Temperature Barometric_Pressure Headwind Direction_True Direction_Mag Wind_Speed Heat_Stress_Index Altitude Dew_Point Density_Altitude Wind_Chill Estado_Fenologico_Predominante Frutos_Afectados fecha
1 2.393549 -76.71124 01/10/2020  10:11:12 a, m, 22.0 825.1 85.2 0.0 23.9 825.2 0.0 313 312 0.0 25.3 1696 21.3 2.504 23.9 717 0 2020-10-01
2 2.393573 -76.71120 01/10/2020  10:11:12 a, m, 21.4 825.3 84.0 0.0 23.5 825.2 0.0 317 317 0.0 24.8 1696 20.7 2.485 23.5 717 0 2020-10-01
3 2.393541 -76.71113 01/10/2020  10:11:12 a, m, 21.8 825.5 79.6 0.2 24.5 825.5 0.4 338 337 0.5 25.7 1694 20.8 2.518 24.5 717 0 2020-10-01
4 2.393503 -76.71119 01/10/2020  10:11:12 a, m, 22.8 825.4 77.6 0.4 25.9 825.4 0.2 299 299 0.5 28.1 1694 21.7 2.572 25.9 717 0 2020-10-01
5 2.393486 -76.71121 01/10/2020  10:11:12 a, m, 22.6 825.2 76.5 0.0 26.0 825.2 0.0 265 264 0.0 28.0 1696 21.5 2.575 25.9 717 0 2020-10-01

Localización de los aborles

leaflet() %>% 
  addTiles() %>% 
  addCircleMarkers(lng = Data_20$Longitude, lat = Data_20$Latitude, radius = 0.2, color = "#7FFF00") %>% 
  addControl(html = "<h1>Arboles de Aguacates</h1>", position = "topright")

Comportamiento de la temperatura.

Temp=as.geodata(Data_20,coords.col = 3:2,data.col = 9)
plot(Temp)

# Convertir los datos a un objeto sf
Data_20_sf <- st_as_sf(Data_20, coords = c("Longitude", "Latitude"), crs = 4326, remove = FALSE)


ggplot(Data_20_sf) +
  geom_point(aes(x = Longitude, y = Latitude, color = Temperature), size = 2) +
  scale_color_viridis_c() + 
  labs(title = "Temperatura del cutivo de Aguacate",
       x = "Longitud",
       y = "Latitud",
       color = "Temperatura") +
  theme_minimal() 

La temperatura de los arboles se encuentra al rededor de 23 a 30 grados centigrados

2. Autocorrelacion espacial con el semivariograma

dist_summary_df <- summary(dist(Data_20[,3:2]))
tabla1<- as.data.frame(as.matrix(dist_summary_df))

tabla1 %>%
  kbl(caption = "Distancias entre Coordenadas") %>%
  kable_paper("hover", full_width = F)
Distancias entre Coordenadas
V1
Min. 0.0000171
1st Qu. 0.0004051
Median 0.0006408
Mean 0.0006827
3rd Qu. 0.0009178
Max. 0.0019591
s_variograma = variog(Temp, option = "bin", uvec = seq(0.0004051, 0.0009178, length.out = 20))
## variog: computing omnidirectional variogram
variograma_temp <- variog.mc.env(Temp, obj.variog = s_variograma, nsim = 99)
## variog.env: generating 99 simulations by permutating data values
## variog.env: computing the empirical variogram for the 99 simulations
## variog.env: computing the envelops
plot(s_variograma, main = "Semivariograma con Entorno de Monte Carlo")
lines(variograma_temp, col = "#EE6AA7", lty = 3)

3. Indentificar el mejor modelo teorico

ajuste del modelo exponencial al semivariograma

# Crear una matriz de valores iniciales para el ajuste
ini.vals <- expand.grid(seq(1, 15, length = 10), seq(6e-04, 8e-05, length = 10))



#modelo exponencial al semivariograma
model_exp <- variofit(s_variograma, ini = ini.vals, cov.model = "exponential", wei = "npair", min = "optim")
## variofit: covariance model used is exponential 
## variofit: weights used: npairs 
## variofit: minimisation function used: optim 
## variofit: searching for best initial value ... selected values:
##               sigmasq phi   tausq kappa
## initial.value "4.11"  "0"   "0"   "0.5"
## status        "est"   "est" "est" "fix"
## loss value: 3048.82004527524

Ajuste del modelo gaussiano al semivariograma

# Ajustar el modelo gaussiano al semivariograma
model_gaus <- variofit(s_variograma, ini = ini.vals, cov.model = "gaussian", wei = "npair", min = "optim")
## variofit: covariance model used is gaussian 
## variofit: weights used: npairs 
## variofit: minimisation function used: optim 
## variofit: searching for best initial value ... selected values:
##               sigmasq phi   tausq kappa
## initial.value "4.11"  "0"   "0"   "0.5"
## status        "est"   "est" "est" "fix"
## loss value: 19656.4857281378

Ajuste del modelo esférico al semivariograma

model_sph <- variofit(s_variograma, ini = ini.vals, cov.model = "spherical", fix.nug = TRUE, wei = "npair", min = "optim")
## variofit: covariance model used is spherical 
## variofit: weights used: npairs 
## variofit: minimisation function used: optim 
## variofit: searching for best initial value ... selected values:
##               sigmasq phi   tausq kappa
## initial.value "2.56"  "0"   "0"   "0.5"
## status        "est"   "est" "fix" "fix"
## loss value: 30516.1655726669
plot(s_variograma, main = "Semivariograma con Modelos Ajustados")
lines(model_exp, col = "#EEA9B8")
lines(model_gaus, col = "#836FFF")
lines(model_sph, col = "#54FF9F")

4. Prediccion espacial con la metodologia Kriging, gererar la imagen de la prediccion espacial