#1. Persiapan data
# Memanggil package
library(sp)
## Warning: package 'sp' was built under R version 4.5.2
library(gstat)
## Warning: package 'gstat' was built under R version 4.5.3
library(nnet)
## Warning: package 'nnet' was built under R version 4.5.3
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.5.3
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.5.3
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(tidyr)
## Warning: package 'tidyr' was built under R version 4.5.3
# Memanggil data meuse
data(meuse)
# Mengambil variabel yang digunakan
data_meuse <- meuse[, c("x", "y", "zinc")]
# Memeriksa data
head(data_meuse)
## x y zinc
## 1 181072 333611 1022
## 2 181025 333558 1141
## 3 181165 333537 640
## 4 181298 333484 257
## 5 181307 333330 269
## 6 181390 333260 281
summary(data_meuse)
## x y zinc
## Min. :178605 Min. :329714 Min. : 113.0
## 1st Qu.:179371 1st Qu.:330762 1st Qu.: 198.0
## Median :179991 Median :331633 Median : 326.0
## Mean :180005 Mean :331635 Mean : 469.7
## 3rd Qu.:180630 3rd Qu.:332463 3rd Qu.: 674.5
## Max. :181390 Max. :333611 Max. :1839.0
# Memeriksa missing value
colSums(is.na(data_meuse))
## x y zinc
## 0 0 0
Menggunakan nilai zinc dari satu titik pengamatan yang memiliki jarak paling dekat dengan lokasi prediksi.
closest_obs <- function(train, test) {
jarak <- sqrt(
(train$x - test$x)^2 +
(train$y - test$y)^2
)
indeks <- which.min(jarak)
return(train$zinc[indeks])
}
Mengambil rata-rata nilai dari k titik terdekat
# Nearest Neighbor (k = 5)
prediksi_nn <- function(train, test, k = 5) {
hasil <- numeric(nrow(test))
for (i in 1:nrow(test)) {
# Menghitung jarak Euclidean
jarak <- sqrt(
(train$x - test$x[i])^2 +
(train$y - test$y[i])^2
)
# Mengambil indeks k titik terdekat
indeks <- order(jarak)[1:k]
# Menghitung rata-rata nilai zinc
hasil[i] <- mean(train$zinc[indeks])
}
return(hasil)
}
Keterangan: - k = 5: menggunakan lima titik pengamatan terdekat. - order(jarak)[1:k]: mengambil indeks lima jarak terkecil. - mean(): menghitung rata-rata nilai zinc dari lima tetangga tersebut.
IDW memberikan bobot lebih besar kepada titik pengamatan yang lebih dekat. Pada kode ini digunakan pangkat jarak \(p=2\).
prediksi_idw <- function(train, test) {
train_sp <- train
coordinates(train_sp) <- ~x+y
test_sp <- test
coordinates(test_sp) <- ~x+y
hasil <- gstat::idw(
zinc ~ 1,
locations = train_sp,
newdata = test_sp,
idp = 2
)
return(as.numeric(hasil$var1.pred))
}
Kriging dilakukan dengan membentuk variogram eksperimental, kemudian menyesuaikan model variogram eksponensial.
prediksi_kriging <- function(train, test) {
# Mengubah data training menjadi spatial object
train_sp <- train
coordinates(train_sp) <- ~x+y
# Mengubah data testing menjadi spatial object
test_sp <- test
coordinates(test_sp) <- ~x+y
# Menghitung varians data
var_z <- var(train$zinc)
# Menghitung jarak maksimum antar titik
max_dist <- max(
spDists(coordinates(train_sp))
)
# Menentukan parameter awal variogram
range_awal <- max(max_dist / 3, 1)
model_awal <- vgm(
psill = 0.8 * var_z,
model = "Exp",
range = range_awal,
nugget = 0.2 * var_z
)
# Membentuk variogram eksperimental
variogram_exp <- variogram(
zinc ~ 1,
data = train_sp
)
# Fitting variogram
model_fit <- tryCatch(
fit.variogram(
variogram_exp,
model_awal,
fit.method = 6
),
error = function(e) NULL
)
# Memeriksa apakah hasil fitting valid
valid <- FALSE
if (!is.null(model_fit)) {
model_non_nug <- model_fit[
model_fit$model != "Nug",
]
valid <- (
nrow(model_non_nug) > 0 &&
all(is.finite(model_fit$psill)) &&
all(model_fit$psill >= 0) &&
all(is.finite(model_non_nug$range)) &&
all(model_non_nug$range > 0) &&
!isTRUE(attr(model_fit, "singular"))
)
}
# Jika fitting tidak valid, gunakan model awal
if (!valid) {
model_fit <- model_awal
}
# Ordinary Kriging
hasil <- krige(
zinc ~ 1,
locations = train_sp,
newdata = test_sp,
model = model_fit
)
return(as.numeric(hasil$var1.pred))
}
Ensemble menggunakan rata-rata hasil prediksi dari tiga metode: Nearest Neighbor (k = 5) IDW (p = 2) Kriging (Ordinary Kriging)
prediksi_ensemble <- function(train, test) {
hasil_nn <- prediksi_nn(train, test, k = 5)
hasil_idw <- prediksi_idw(train, test)
hasil_kriging <- prediksi_kriging(train, test)
hasil <- (
hasil_nn +
hasil_idw +
hasil_kriging
) / 3
return(hasil)
}
#2. Cross Validation (LOOCV) Pada tahap ini, setiap satu titik pengamatan dijadikan data pengujian secara bergantian. Sementara itu, titik lainnya digunakan sebagai data training.
n <- nrow(data_meuse)
hasil_cv <- data.frame(
Aktual = data_meuse$zinc,
Closest_Observation = NA_real_,
NN = NA_real_,
IDW = NA_real_,
Ensemble = NA_real_,
Kriging = NA_real_
)
set.seed(123)
for (i in 1:n) {
train <- data_meuse[-i, ]
test <- data_meuse[i, , drop = FALSE]
hasil_cv$Closest_Observation[i] <-
closest_obs(train, test)
hasil_cv$NN[i] <-
prediksi_nn(train, test, k = 5)
hasil_cv$IDW[i] <-
prediksi_idw(train, test)
hasil_cv$Kriging[i] <-
prediksi_kriging(train, test)
hasil_cv$Ensemble[i] <- mean(
c(
hasil_cv$NN[i],
hasil_cv$IDW[i],
hasil_cv$Kriging[i]
)
)
if (i %% 10 == 0) {
cat("Proses CV:", i, "dari", n, "\n")
}
}
## [inverse distance weighted interpolation]
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(object, model, fit.sills = fit.sills, fit.ranges =
## fit.ranges, : singular model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 10 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 20 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 30 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 40 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 50 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 60 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 70 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 80 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 90 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 100 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 110 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 120 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 130 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(object, model, fit.sills = fit.sills, fit.ranges =
## fit.ranges, : No convergence after 200 iterations: try different initial
## values?
## [using ordinary kriging]
## Proses CV: 140 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## Proses CV: 150 dari 155
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): No
## convergence after 200 iterations: try different initial values?
## Warning in fit.variogram(variogram_exp, model_awal, fit.method = 6): singular
## model in variogram fit
## [using ordinary kriging]
## [inverse distance weighted interpolation]
## [using ordinary kriging]
# Melihat hasil prediksi
head(hasil_cv)
## Aktual Closest_Observation NN IDW Ensemble Kriging
## 1 1022 1141 558.0 793.8598 767.0940 949.4222
## 2 1141 1022 702.0 727.3774 736.6329 780.5214
## 3 640 1022 634.4 605.2803 631.5304 654.9110
## 4 257 640 511.6 477.0037 500.3030 512.3053
## 5 269 281 269.2 368.8423 317.5397 314.5769
## 6 281 269 248.8 347.1991 282.6059 251.8186
#3. Menghitung RMSE RMSE digunakan untuk mengetahui besarnya rata-rata kesalahan prediksi. Semakin kecil nilai RMSE, semakin baik hasil interpolasi berdasarkan ukuran kesalahan tersebut.
hitung_rmse <- function(aktual, prediksi) {
sqrt(mean((aktual - prediksi)^2))
}
hasil_rmse <- data.frame(
Metode = c(
"Closest Observation",
"Nearest Neighbor",
"IDW",
"Ensemble",
"Kriging"
),
RMSE = c(
hitung_rmse(
hasil_cv$Aktual,
hasil_cv$Closest_Observation
),
hitung_rmse(
hasil_cv$Aktual,
hasil_cv$NN
),
hitung_rmse(
hasil_cv$Aktual,
hasil_cv$IDW
),
hitung_rmse(
hasil_cv$Aktual,
hasil_cv$Ensemble
),
hitung_rmse(
hasil_cv$Aktual,
hasil_cv$Kriging
)
)
)
hasil_rmse <- hasil_rmse %>%
arrange(RMSE)
print(hasil_rmse)
## Metode RMSE
## 1 Kriging 233.5300
## 2 Ensemble 252.3520
## 3 Nearest Neighbor 263.9874
## 4 IDW 278.2734
## 5 Closest Observation 309.9685
metode_terbaik <- hasil_rmse %>%
slice_min(
order_by = RMSE,
n = 1
)
print(metode_terbaik)
## Metode RMSE
## 1 Kriging 233.53
Berdasarkan hasil perbandingan lima metode interpolasi menggunakan Leave-One-Out Cross Validation (LOOCV), diperoleh bahwa metode Ordinary Kriging memiliki nilai RMSE terkecil sebesar 233,5300. Selanjutnya, metode Ensemble memperoleh RMSE sebesar 252,3520, Nearest Neighbor sebesar 263,9874, IDW sebesar 278,2734, dan Closest Observation sebesar 309,9685. Hasil tersebut menunjukkan bahwa Ordinary Kriging merupakan metode interpolasi dengan tingkat kesalahan prediksi paling rendah pada data zinc dalam dataset meuse. Dengan demikian, Ordinary Kriging menjadi metode terbaik berdasarkan kriteria RMSE pada pengujian ini.
ggplot(
hasil_rmse,
aes(
x = reorder(Metode, RMSE),
y = RMSE
)
) +
geom_col() +
geom_text(
aes(label = round(RMSE, 2)),
hjust = -0.2
) +
coord_flip() +
labs(
title = "Perbandingan RMSE Metode Interpolasi",
x = "Metode Interpolasi",
y = "RMSE"
) +
theme_minimal()