1 Pendahuluan

1.1 Latar Belakang

Dataset Wine Quality dari UCI Machine Learning Repository berisi sampel Vinho Verde dari Portugal. Dataset menyediakan sebelas karakteristik fisikokimia sebagai prediktor dan skor quality sebagai respons. UCI menyediakan dua kelompok data, yaitu red wine dan white wine, dan keduanya dapat dianalisis sebagai masalah regresi maupun klasifikasi. Pada project ini quality diperlakukan sebagai variabel numerik sehingga fokus analisis adalah regresi (Cortez et al., 2009).

Ridge regression digunakan karena penalti \(L_2\) dapat membantu menstabilkan estimasi ketika prediktor saling berkorelasi. Analisis dilakukan melalui dua jalur yang sengaja dipisahkan:

  • Komputasi manual, menggunakan standardisasi eksplisit dan solusi matriks Ridge.
  • Komputasi package R, menggunakan tidymodels dan glmnet dengan preprocessing yang direproduksi melalui recipe().

Kedua jalur menggunakan pembagian data dan nilai \(\lambda\) yang sama sehingga koefisien dan prediksi dapat dibandingkan secara langsung.

Pada komputasi manual, standardisasi dilakukan secara eksplisit menggunakan rumus \(Z=(X-\bar X)/s\). Pada komputasi package, standardisasi dilakukan melalui step_normalize() yang mempelajari mean dan simpangan baku dari training set. Karena standardisasi sudah dilakukan oleh recipe, standardisasi internal glmnet dinonaktifkan dengan standardize = FALSE. Dokumentasi recipes menjelaskan bahwa step_normalize() mengestimasi mean dan SD dari data training dan menerapkannya pada data baru (recipes documentation).

1.2 Rumusan Masalah

  1. Bagaimana penerapan Ridge regression secara manual pada red wine dan white wine?
  2. Apakah hasil komputasi manual konsisten dengan implementasi package R?
  3. Berapa nilai \(\lambda\) yang dipilih melalui cross-validation?
  4. Bagaimana performa Ridge pada data test?
  5. Bagaimana hasil Ridge dibandingkan dengan OLS dan Random Forest sebagai benchmark prediksi?

1.3 Tujuan

Analisis bertujuan untuk memahami struktur data, memeriksa multikolinearitas, melakukan standardisasi, menghitung Ridge secara manual, mengimplementasikan Ridge dengan package R, menentukan \(\lambda\) melalui cross-validation, mengevaluasi prediksi out-of-sample, dan membandingkan hasil kedua pendekatan.

2 Landasan Teori

2.1 Model Regresi Linear

Model regresi linear dengan \(p\) prediktor ditulis sebagai

\[ Y_i=\beta_0+\sum_{j=1}^{p}\beta_jX_{ij}+\varepsilon_i. \]

OLS memperoleh koefisien dengan meminimumkan jumlah kuadrat residual:

\[ \hat\beta_{OLS}=\arg\min_{\beta}\sum_{i=1}^{n}(y_i-\beta_0-X_i\beta)^2. \]

2.2 Standardisasi Prediktor

Karena penalti Ridge bekerja pada besar koefisien, perbedaan skala antar-prediktor perlu dikendalikan. Standardisasi menggunakan

\[ Z_{ij}=\frac{X_{ij}-\bar X_j}{s_j}, \]

dengan \(\bar X_j\) sebagai mean dan \(s_j\) sebagai simpangan baku prediktor ke-\(j\).

Dalam project ini standardisasi hanya menggunakan informasi training set. Dengan demikian, mean dan SD dari test set tidak digunakan untuk membentuk model.

2.3 Ridge Regression

Ridge menambahkan penalti kuadrat koefisien. Untuk regresi Gaussian, formulasi yang konsisten dengan glmnet adalah

\[ \hat\beta_{Ridge}=\arg\min_{\beta_0,\beta}\left\{\frac{1}{2n}\lVert y-\beta_0-Z\beta\rVert_2^2+\frac{\lambda}{2}\lVert\beta\rVert_2^2\right\}. \]

Karena prediktor telah dipusatkan, intercept dapat dipisahkan dan solusi slope manual menjadi

\[ \hat\beta_{Ridge}=(Z^TZ+n\lambda I)^{-1}Z^T(y-\bar y). \]

Intercept dapat diperoleh kembali dari mean response karena prediktor telah dipusatkan:

\[ \hat\beta_0=\bar y. \]

Nilai \(\lambda\) mengendalikan kekuatan shrinkage. Ketika \(\lambda=0\), solusi kembali ke OLS. Semakin besar \(\lambda\), koefisien semakin menyusut menuju nol, tetapi Ridge tidak melakukan seleksi variabel secara langsung.

2.4 Pemilihan λ

Nilai \(\lambda\) tidak dipilih berdasarkan test set. Pada project ini, \(\lambda\) dipilih menggunakan 10-fold cross-validation pada training set dengan RMSE sebagai metrik utama.

2.5 Metrik Evaluasi

RMSE:

\[ RMSE=\sqrt{\frac{1}{n}\sum_{i=1}^{n}(y_i-\hat y_i)^2}. \]

MAE:

\[ MAE=\frac{1}{n}\sum_{i=1}^{n}|y_i-\hat y_i|. \]

Koefisien determinasi:

\[ R^2=1-\frac{\sum_i(y_i-\hat y_i)^2}{\sum_i(y_i-\bar y)^2}. \]

Untuk RMSE dan MAE, nilai yang lebih kecil menunjukkan error prediksi yang lebih rendah. Untuk \(R^2\), nilai yang lebih besar menunjukkan proporsi variasi response yang lebih banyak dijelaskan oleh prediksi model.

3 Data dan Fungsi Umum

3.1 Sumber Data

Data berasal dari UCI Machine Learning Repository, yang menyediakan file winequality-red.csv dan winequality-white.csv. UCI mencatat 11 fitur fisikokimia dan quality sebagai output sensorik (UCI Machine Learning Repository).

3.2 Variabel Analisis

predictors <- c(
  "fixed.acidity", "volatile.acidity", "citric.acid",
  "residual.sugar", "chlorides", "free.sulfur.dioxide",
  "total.sulfur.dioxide", "density", "pH", "sulphates", "alcohol"
)
response <- "quality"

3.3 Fungsi Evaluasi

metric_table <- function(truth, estimate) {
  tibble(
    RMSE = rmse_vec(truth, estimate),
    MAE  = mae_vec(truth, estimate),
    R2   = rsq_vec(truth, estimate)
  )
}

manual_ridge <- function(train_data, predictors, response, lambda) {
  X <- as.matrix(train_data[, predictors])
  y <- train_data[[response]]

  x_mean <- colMeans(X)
  x_sd <- apply(X, 2, sd)
  Z <- scale(X, center = x_mean, scale = x_sd)

  p <- ncol(Z)
  penalty_matrix <- diag(p)

  n <- nrow(Z)

  # glmnet Gaussian Ridge uses: RSS/(2n) + lambda/2 * ||beta||^2.
  # Multiplying the objective by 2n gives: RSS + n*lambda*||beta||^2.
  beta <- solve(
    crossprod(Z) + n * lambda * penalty_matrix,
    crossprod(Z, y - mean(y))
  )

  beta <- as.numeric(beta)
  names(beta) <- predictors

  intercept <- mean(y)

  list(
    beta = beta,
    intercept = intercept,
    means = x_mean,
    sds = x_sd,
    lambda = lambda
  )
}

predict_manual_ridge <- function(model, new_data) {
  X_new <- as.matrix(new_data[names(model$beta)])
  Z_new <- sweep(X_new, 2, model$means, "-")
  Z_new <- sweep(Z_new, 2, model$sds, "/")
  as.numeric(model$intercept + Z_new %*% model$beta)
}

4 Red Wine

4.1 Import Data

red_url <- paste0(
  "https://archive.ics.uci.edu/ml/machine-learning-databases/",
  "wine-quality/winequality-red.csv"
)

red_wine <- read.csv(red_url, sep = ";")
red_model <- red_wine %>% select(all_of(c(predictors, response)))

cat("Observasi:", nrow(red_model), "\n")
## Observasi: 1599
cat("Variabel:", ncol(red_model), "\n")
## Variabel: 12

4.2 Pemeriksaan Data

red_missing <- colSums(is.na(red_model))
red_duplicates <- sum(duplicated(red_model))

kable(
  tibble(variable = names(red_missing), missing = as.integer(red_missing)),
  caption = "Missing Value Red Wine"
)
Missing Value Red Wine
variable missing
fixed.acidity 0
volatile.acidity 0
citric.acid 0
residual.sugar 0
chlorides 0
free.sulfur.dioxide 0
total.sulfur.dioxide 0
density 0
pH 0
sulphates 0
alcohol 0
quality 0
cat("Duplikasi:", red_duplicates)
## Duplikasi: 240

4.3 Eksplorasi Data

p1 <- ggplot(red_model, aes(quality)) +
  geom_histogram(binwidth = 1, boundary = .5, color = "white") +
  labs(title = "Distribusi Quality — Red Wine", x = "Quality", y = "Frekuensi") +
  theme_minimal(base_size = 12)

red_long <- red_model %>%
  pivot_longer(all_of(predictors), names_to = "variable", values_to = "value")

p2 <- ggplot(red_long, aes(value)) +
  geom_histogram(bins = 30, color = "white") +
  facet_wrap(~variable, scales = "free", ncol = 3) +
  labs(title = "Distribusi Prediktor — Red Wine", x = NULL, y = "Frekuensi") +
  theme_minimal(base_size = 10)

p1 / p2

4.4 Pembagian Training dan Test

set.seed(12345)
red_split <- initial_split(red_model, prop = .80, strata = quality)
red_train <- training(red_split)
red_test <- testing(red_split)

cat("Training:", nrow(red_train), "\n")
## Training: 1278
cat("Testing :", nrow(red_test), "\n")
## Testing : 321

4.5 Korelasi dan Multikolinearitas

red_train_tmp <- red_train
red_ols_tmp <- lm(quality ~ ., data = red_train_tmp)
red_vif <- car::vif(red_ols_tmp)

red_vif_table <- tibble(
  variable = names(red_vif),
  VIF = as.numeric(red_vif)
) %>% arrange(desc(VIF))

kable(red_vif_table, digits = 3, caption = "VIF Red Wine")
VIF Red Wine
variable VIF
fixed.acidity 7.967
density 6.600
pH 3.459
alcohol 3.209
citric.acid 3.064
total.sulfur.dioxide 2.190
free.sulfur.dioxide 1.960
volatile.acidity 1.754
residual.sugar 1.704
chlorides 1.544
sulphates 1.503

Hasil VIF menunjukkan bahwa fixed.acidity memiliki nilai VIF paling tinggi, yaitu 7,967, diikuti oleh density sebesar 6,600. Nilai ini menunjukkan bahwa kedua variabel tersebut memiliki keterkaitan yang cukup kuat dengan prediktor lainnya sehingga berpotensi menimbulkan multikolinearitas. Sementara itu, variabel pH, alcohol, dan citric.acid memiliki VIF sekitar 3, sedangkan variabel lainnya berada di bawah 2,2, sehingga hubungan linear dengan prediktor lain relatif lebih rendah. Secara keseluruhan, hasil ini menunjukkan adanya multikolinearitas terutama pada fixed.acidity dan density, yang mendukung penggunaan Ridge Regression untuk membantu menstabilkan estimasi koefisien ketika prediktor saling berkorelasi.

red_cor <- cor(red_model[predictors], use = "complete.obs")
red_cor_long <- as.data.frame(red_cor) %>%
  rownames_to_column("v1") %>%
  pivot_longer(-v1, names_to = "v2", values_to = "r")

ggplot(red_cor_long, aes(v1, v2, fill = r)) +
  geom_tile() +
  geom_text(aes(label = sprintf("%.2f", r)), size = 2.5) +
  scale_fill_gradient2(low = "#2166AC", mid = "white", high = "#B2182B", midpoint = 0, limits = c(-1,1)) +
  labs(title = "Korelasi Prediktor — Red Wine", x = NULL, y = NULL, fill = "r") +
  theme_minimal(base_size = 9) +
  theme(axis.text.x = element_text(angle = 45, hjust = 1))

Matriks korelasi menunjukkan beberapa hubungan yang cukup kuat antar prediktor. Korelasi positif paling terlihat antara fixed.acidity dengan citric.acid (r = 0,67), fixed.acidity dengan density (r = 0,67), serta free.sulfur.dioxide dengan total.sulfur.dioxide (r = 0,67). Sebaliknya, hubungan negatif yang cukup kuat terlihat antara pH dengan fixed.acidity (r = −0,68) dan pH dengan citric.acid (r = −0,54). Pola ini memperlihatkan bahwa beberapa karakteristik kimia wine bergerak bersama, terutama variabel yang berkaitan dengan tingkat keasaman dan sulfur dioksida. Hasil korelasi ini sejalan dengan nilai VIF yang menunjukkan bahwa fixed.acidity dan density merupakan variabel yang perlu mendapat perhatian dalam masalah multikolinearitas.

4.6 Komputasi Manual Ridge

4.6.1 Standardisasi Manual

X_red <- as.matrix(red_train[predictors])
y_red <- red_train$quality

red_means <- colMeans(X_red)
red_sds <- apply(X_red, 2, sd)
Z_red <- scale(X_red, center = red_means, scale = red_sds)

red_standardization <- tibble(
  variable = predictors,
  mean_training = as.numeric(red_means),
  sd_training = as.numeric(red_sds)
)

kable(red_standardization, digits = 4, caption = "Parameter Standardisasi Manual — Red Wine")
Parameter Standardisasi Manual — Red Wine
variable mean_training sd_training
fixed.acidity 8.3111 1.7418
volatile.acidity 0.5310 0.1816
citric.acid 0.2701 0.1957
residual.sugar 2.5420 1.4072
chlorides 0.0882 0.0493
free.sulfur.dioxide 15.7750 10.1708
total.sulfur.dioxide 46.1287 32.3489
density 0.9967 0.0019
pH 3.3098 0.1559
sulphates 0.6603 0.1739
alcohol 10.4157 1.0717

4.6.2 Rumus Matriks Ridge

Dengan \(Z\) sebagai matriks prediktor terstandardisasi, perhitungan manual mengikuti:

\[ \hat\beta(\lambda)=(Z^TZ+n\lambda I)^{-1}Z^T(y-\bar y). \]

Intercept dihitung sebagai \(\hat\beta_0=\bar y\) karena kolom prediktor telah dipusatkan.

4.6.3 Kandidat \(\lambda\)

Agar perbandingan manual dan package adil, kandidat \(\lambda\) menggunakan grid yang sama.

red_lambda_grid <- 10^seq(-4, 2, length.out = 100)

set.seed(12345)
red_manual_folds <- vfold_cv(red_train, v = 10, strata = quality)

red_manual_cv <- map_dfr(red_lambda_grid, function(lambda) {
  fold_rmse <- map_dbl(red_manual_folds$splits, function(s) {
    tr <- analysis(s)
    va <- assessment(s)
    fit <- manual_ridge(tr, predictors, response, lambda)
    pred <- predict_manual_ridge(fit, va)
    rmse_vec(va$quality, pred)
  })

  tibble(
    penalty = lambda,
    RMSE = mean(fold_rmse)
  )
})

red_manual_best <- red_manual_cv %>% slice_min(RMSE, n = 1)
red_manual_best

4.6.4 Visualisasi CV Manual

ggplot(red_manual_cv, aes(penalty, RMSE)) +
  geom_line(linewidth = .8) +
  geom_point(data = red_manual_best, size = 3) +
  scale_x_log10() +
  labs(title = "10-Fold CV Manual Ridge — Red Wine", x = expression(lambda), y = "Mean RMSE") +
  theme_minimal(base_size = 12)

Hasil 10-fold cross-validation menunjukkan bahwa nilai RMSE berada di sekitar 0,65 pada sebagian besar nilai \(\lambda\) yang kecil, kemudian meningkat cukup tajam ketika \(\lambda\) semakin besar. Nilai RMSE minimum diperoleh pada \(\lambda \approx 0,06\), dengan RMSE = 0,6515, sehingga nilai tersebut dipilih sebagai \(\lambda\) optimal karena memberikan kesalahan prediksi rata-rata terkecil pada data validasi. Ketika \(\lambda\) semakin besar, penalti Ridge semakin kuat sehingga koefisien semakin menyusut dan performa prediksi menurun, yang terlihat dari kenaikan RMSE hingga sekitar 0,81.

4.6.5 Final Manual Ridge

red_lambda_manual <- red_manual_best$penalty
red_manual_fit <- manual_ridge(red_train, predictors, response, red_lambda_manual)

red_manual_coef <- tibble(
  term = predictors,
  estimate = unname(red_manual_fit$beta)
)

kable(red_manual_coef, digits = 5, caption = "Koefisien Manual Ridge — Red Wine")
Koefisien Manual Ridge — Red Wine
term estimate
fixed.acidity 0.05370
volatile.acidity -0.19479
citric.acid -0.01029
residual.sugar 0.03302
chlorides -0.09225
free.sulfur.dioxide 0.04596
total.sulfur.dioxide -0.11194
density -0.04489
pH -0.05403
sulphates 0.13112
alcohol 0.27578

4.6.6 Prediksi dan Evaluasi Manual

red_manual_pred <- predict_manual_ridge(red_manual_fit, red_test)
red_manual_metrics <- metric_table(red_test$quality, red_manual_pred)
red_manual_metrics

Pada \(\lambda\) terpilih, model menghasilkan MAE = 0,4956 dan R² = 0,3052, yang berarti model mampu menjelaskan sekitar 30,52% variasi kualitas wine pada data yang dievaluasi.

4.7 Komputasi Ridge dengan Package R

4.7.1 Preprocessing dengan recipe()

step_normalize() mempelajari mean dan SD dari training data lalu menggunakan parameter tersebut ketika data baru diproses. Dengan demikian, standardisasi tidak menggunakan informasi test set (recipes documentation).

red_recipe <- recipe(quality ~ ., data = red_train) %>%
  step_normalize(all_numeric_predictors())

4.7.2 Spesifikasi Ridge

red_ridge_spec <- linear_reg(
  penalty = tune(),
  mixture = 0
) %>%
  set_engine("glmnet", standardize = FALSE)

mixture = 0 menyatakan penalti Ridge murni. standardize = FALSE digunakan karena standardisasi sudah dilakukan oleh step_normalize().

4.7.3 Cross-Validation Package

red_folds <- red_manual_folds
red_grid <- tibble(penalty = red_lambda_grid)

red_workflow <- workflow() %>%
  add_recipe(red_recipe) %>%
  add_model(red_ridge_spec)

red_tuned <- tune_grid(
  red_workflow,
  resamples = red_folds,
  grid = red_grid,
  metrics = metric_set(rmse, mae, rsq)
)

red_best <- select_best(red_tuned, metric = "rmse")
red_best

4.7.4 Final Package Ridge

red_final_workflow <- finalize_workflow(red_workflow, red_best)
red_package_fit <- fit(red_final_workflow, data = red_train)

red_package_pred <- predict(red_package_fit, new_data = red_test)$.pred
red_package_metrics <- metric_table(red_test$quality, red_package_pred)
red_package_metrics

4.7.5 Perbandingan Koefisien Manual dan Package

red_package_coef <- tidy(extract_fit_parsnip(red_package_fit)$fit) %>%
  filter(term != "(Intercept)") %>%
  transmute(term, package_estimate = estimate)

red_coef_comparison <- red_manual_coef %>%
  rename(manual_estimate = estimate) %>%
  left_join(red_package_coef, by = "term") %>%
  mutate(abs_difference = abs(manual_estimate - package_estimate))

kable(red_coef_comparison, digits = 6, caption = "Perbandingan Koefisien Manual dan Package — Red Wine")
Perbandingan Koefisien Manual dan Package — Red Wine
term manual_estimate package_estimate abs_difference
fixed.acidity 0.053696 0.000000 0.053696
fixed.acidity 0.053696 0.000248 0.053448
fixed.acidity 0.053696 0.000272 0.053424
fixed.acidity 0.053696 0.000299 0.053397
fixed.acidity 0.053696 0.000328 0.053368
fixed.acidity 0.053696 0.000359 0.053337
fixed.acidity 0.053696 0.000394 0.053302
fixed.acidity 0.053696 0.000432 0.053264
fixed.acidity 0.053696 0.000474 0.053222
fixed.acidity 0.053696 0.000519 0.053177
fixed.acidity 0.053696 0.000569 0.053127
fixed.acidity 0.053696 0.000624 0.053072
fixed.acidity 0.053696 0.000684 0.053012
fixed.acidity 0.053696 0.000749 0.052947
fixed.acidity 0.053696 0.000821 0.052875
fixed.acidity 0.053696 0.000899 0.052797
fixed.acidity 0.053696 0.000985 0.052711
fixed.acidity 0.053696 0.001078 0.052618
fixed.acidity 0.053696 0.001180 0.052516
fixed.acidity 0.053696 0.001292 0.052404
fixed.acidity 0.053696 0.001414 0.052282
fixed.acidity 0.053696 0.001547 0.052149
fixed.acidity 0.053696 0.001691 0.052005
fixed.acidity 0.053696 0.001849 0.051847
fixed.acidity 0.053696 0.002021 0.051675
fixed.acidity 0.053696 0.002208 0.051488
fixed.acidity 0.053696 0.002411 0.051285
fixed.acidity 0.053696 0.002631 0.051065
fixed.acidity 0.053696 0.002871 0.050825
fixed.acidity 0.053696 0.003130 0.050566
fixed.acidity 0.053696 0.003411 0.050285
fixed.acidity 0.053696 0.003715 0.049981
fixed.acidity 0.053696 0.004043 0.049653
fixed.acidity 0.053696 0.004397 0.049299
fixed.acidity 0.053696 0.004779 0.048917
fixed.acidity 0.053696 0.005189 0.048507
fixed.acidity 0.053696 0.005629 0.048066
fixed.acidity 0.053696 0.006102 0.047594
fixed.acidity 0.053696 0.006607 0.047089
fixed.acidity 0.053696 0.007147 0.046549
fixed.acidity 0.053696 0.007722 0.045974
fixed.acidity 0.053696 0.008333 0.045363
fixed.acidity 0.053696 0.008982 0.044714
fixed.acidity 0.053696 0.009669 0.044027
fixed.acidity 0.053696 0.010395 0.043301
fixed.acidity 0.053696 0.011159 0.042537
fixed.acidity 0.053696 0.011963 0.041733
fixed.acidity 0.053696 0.012804 0.040892
fixed.acidity 0.053696 0.013684 0.040012
fixed.acidity 0.053696 0.014601 0.039095
fixed.acidity 0.053696 0.015555 0.038141
fixed.acidity 0.053696 0.016543 0.037153
fixed.acidity 0.053696 0.017565 0.036131
fixed.acidity 0.053696 0.018620 0.035076
fixed.acidity 0.053696 0.019704 0.033992
fixed.acidity 0.053696 0.020817 0.032879
fixed.acidity 0.053696 0.021957 0.031739
fixed.acidity 0.053696 0.023121 0.030575
fixed.acidity 0.053696 0.024307 0.029389
fixed.acidity 0.053696 0.025513 0.028183
fixed.acidity 0.053696 0.026737 0.026959
fixed.acidity 0.053696 0.027977 0.025719
fixed.acidity 0.053696 0.029230 0.024466
fixed.acidity 0.053696 0.030495 0.023201
fixed.acidity 0.053696 0.031769 0.021927
fixed.acidity 0.053696 0.033050 0.020646
fixed.acidity 0.053696 0.034335 0.019361
fixed.acidity 0.053696 0.035622 0.018074
fixed.acidity 0.053696 0.036894 0.016802
fixed.acidity 0.053696 0.038169 0.015527
fixed.acidity 0.053696 0.039436 0.014260
fixed.acidity 0.053696 0.040690 0.013006
fixed.acidity 0.053696 0.041928 0.011768
fixed.acidity 0.053696 0.043144 0.010552
fixed.acidity 0.053696 0.044333 0.009363
fixed.acidity 0.053696 0.045492 0.008204
fixed.acidity 0.053696 0.046613 0.007083
fixed.acidity 0.053696 0.047692 0.006003
fixed.acidity 0.053696 0.048724 0.004972
fixed.acidity 0.053696 0.049703 0.003993
fixed.acidity 0.053696 0.050623 0.003073
fixed.acidity 0.053696 0.051480 0.002216
fixed.acidity 0.053696 0.052268 0.001428
fixed.acidity 0.053696 0.052984 0.000712
fixed.acidity 0.053696 0.053625 0.000071
fixed.acidity 0.053696 0.054186 0.000490
fixed.acidity 0.053696 0.054666 0.000970
fixed.acidity 0.053696 0.055062 0.001366
fixed.acidity 0.053696 0.055375 0.001679
fixed.acidity 0.053696 0.055603 0.001907
fixed.acidity 0.053696 0.055748 0.002052
fixed.acidity 0.053696 0.055811 0.002115
fixed.acidity 0.053696 0.055794 0.002098
fixed.acidity 0.053696 0.055700 0.002004
fixed.acidity 0.053696 0.055534 0.001838
fixed.acidity 0.053696 0.055299 0.001603
fixed.acidity 0.053696 0.055000 0.001304
fixed.acidity 0.053696 0.054643 0.000947
fixed.acidity 0.053696 0.054233 0.000537
fixed.acidity 0.053696 0.053777 0.000081
volatile.acidity -0.194787 0.000000 0.194787
volatile.acidity -0.194787 -0.000757 0.194031
volatile.acidity -0.194787 -0.000830 0.193957
volatile.acidity -0.194787 -0.000911 0.193877
volatile.acidity -0.194787 -0.000999 0.193788
volatile.acidity -0.194787 -0.001096 0.193692
volatile.acidity -0.194787 -0.001202 0.193586
volatile.acidity -0.194787 -0.001318 0.193469
volatile.acidity -0.194787 -0.001445 0.193342
volatile.acidity -0.194787 -0.001585 0.193202
volatile.acidity -0.194787 -0.001738 0.193049
volatile.acidity -0.194787 -0.001906 0.192881
volatile.acidity -0.194787 -0.002089 0.192698
volatile.acidity -0.194787 -0.002290 0.192497
volatile.acidity -0.194787 -0.002511 0.192277
volatile.acidity -0.194787 -0.002752 0.192036
volatile.acidity -0.194787 -0.003015 0.191772
volatile.acidity -0.194787 -0.003304 0.191484
volatile.acidity -0.194787 -0.003619 0.191168
volatile.acidity -0.194787 -0.003964 0.190823
volatile.acidity -0.194787 -0.004341 0.190446
volatile.acidity -0.194787 -0.004753 0.190034
volatile.acidity -0.194787 -0.005203 0.189585
volatile.acidity -0.194787 -0.005694 0.189094
volatile.acidity -0.194787 -0.006229 0.188558
volatile.acidity -0.194787 -0.006813 0.187974
volatile.acidity -0.194787 -0.007449 0.187338
volatile.acidity -0.194787 -0.008142 0.186645
volatile.acidity -0.194787 -0.008896 0.185891
volatile.acidity -0.194787 -0.009716 0.185071
volatile.acidity -0.194787 -0.010607 0.184181
volatile.acidity -0.194787 -0.011573 0.183214
volatile.acidity -0.194787 -0.012621 0.182166
volatile.acidity -0.194787 -0.013757 0.181031
volatile.acidity -0.194787 -0.014985 0.179803
volatile.acidity -0.194787 -0.016311 0.178476
volatile.acidity -0.194787 -0.017743 0.177044
volatile.acidity -0.194787 -0.019286 0.175502
volatile.acidity -0.194787 -0.020945 0.173843
volatile.acidity -0.194787 -0.022726 0.172061
volatile.acidity -0.194787 -0.024636 0.170151
volatile.acidity -0.194787 -0.026679 0.168108
volatile.acidity -0.194787 -0.028861 0.165927
volatile.acidity -0.194787 -0.031184 0.163603
volatile.acidity -0.194787 -0.033654 0.161134
volatile.acidity -0.194787 -0.036271 0.158516
volatile.acidity -0.194787 -0.039040 0.155748
volatile.acidity -0.194787 -0.041958 0.152829
volatile.acidity -0.194787 -0.045026 0.149761
volatile.acidity -0.194787 -0.048241 0.146546
volatile.acidity -0.194787 -0.051601 0.143187
volatile.acidity -0.194787 -0.055099 0.139689
volatile.acidity -0.194787 -0.058729 0.136059
volatile.acidity -0.194787 -0.062482 0.132306
volatile.acidity -0.194787 -0.066348 0.128439
volatile.acidity -0.194787 -0.070317 0.124470
volatile.acidity -0.194787 -0.074375 0.120412
volatile.acidity -0.194787 -0.078508 0.116280
volatile.acidity -0.194787 -0.082700 0.112087
volatile.acidity -0.194787 -0.086938 0.107850
volatile.acidity -0.194787 -0.091203 0.103584
volatile.acidity -0.194787 -0.095480 0.099308
volatile.acidity -0.194787 -0.099752 0.095035
volatile.acidity -0.194787 -0.104004 0.090784
volatile.acidity -0.194787 -0.108220 0.086567
volatile.acidity -0.194787 -0.112386 0.082401
volatile.acidity -0.194787 -0.116490 0.078297
volatile.acidity -0.194787 -0.120520 0.074268
volatile.acidity -0.194787 -0.124478 0.070310
volatile.acidity -0.194787 -0.128331 0.066456
volatile.acidity -0.194787 -0.132085 0.062702
volatile.acidity -0.194787 -0.135733 0.059054
volatile.acidity -0.194787 -0.139271 0.055516
volatile.acidity -0.194787 -0.142697 0.052090
volatile.acidity -0.194787 -0.146009 0.048779
volatile.acidity -0.194787 -0.149205 0.045582
volatile.acidity -0.194787 -0.152287 0.042500
volatile.acidity -0.194787 -0.155256 0.039532
volatile.acidity -0.194787 -0.158112 0.036676
volatile.acidity -0.194787 -0.160857 0.033930
volatile.acidity -0.194787 -0.163494 0.031293
volatile.acidity -0.194787 -0.166025 0.028762
volatile.acidity -0.194787 -0.168452 0.026336
volatile.acidity -0.194787 -0.170776 0.024011
volatile.acidity -0.194787 -0.173001 0.021786
volatile.acidity -0.194787 -0.175128 0.019659
volatile.acidity -0.194787 -0.177159 0.017628
volatile.acidity -0.194787 -0.179097 0.015690
volatile.acidity -0.194787 -0.180943 0.013844
volatile.acidity -0.194787 -0.182699 0.012088
volatile.acidity -0.194787 -0.184368 0.010420
volatile.acidity -0.194787 -0.185950 0.008837
volatile.acidity -0.194787 -0.187448 0.007339
volatile.acidity -0.194787 -0.188865 0.005923
volatile.acidity -0.194787 -0.190202 0.004586
volatile.acidity -0.194787 -0.191461 0.003326
volatile.acidity -0.194787 -0.192646 0.002141
volatile.acidity -0.194787 -0.193759 0.001028
volatile.acidity -0.194787 -0.194802 0.000015
volatile.acidity -0.194787 -0.195778 0.000991
citric.acid -0.010290 0.000000 0.010290
citric.acid -0.010290 0.000442 0.010732
citric.acid -0.010290 0.000485 0.010774
citric.acid -0.010290 0.000531 0.010821
citric.acid -0.010290 0.000583 0.010873
citric.acid -0.010290 0.000639 0.010929
citric.acid -0.010290 0.000701 0.010991
citric.acid -0.010290 0.000769 0.011058
citric.acid -0.010290 0.000843 0.011132
citric.acid -0.010290 0.000924 0.011214
citric.acid -0.010290 0.001013 0.011303
citric.acid -0.010290 0.001110 0.011400
citric.acid -0.010290 0.001217 0.011506
citric.acid -0.010290 0.001333 0.011623
citric.acid -0.010290 0.001460 0.011750
citric.acid -0.010290 0.001600 0.011890
citric.acid -0.010290 0.001752 0.012042
citric.acid -0.010290 0.001919 0.012208
citric.acid -0.010290 0.002100 0.012390
citric.acid -0.010290 0.002299 0.012589
citric.acid -0.010290 0.002516 0.012805
citric.acid -0.010290 0.002752 0.013042
citric.acid -0.010290 0.003009 0.013299
citric.acid -0.010290 0.003290 0.013580
citric.acid -0.010290 0.003595 0.013885
citric.acid -0.010290 0.003927 0.014217
citric.acid -0.010290 0.004288 0.014578
citric.acid -0.010290 0.004680 0.014970
citric.acid -0.010290 0.005105 0.015395
citric.acid -0.010290 0.005565 0.015855
citric.acid -0.010290 0.006064 0.016353
citric.acid -0.010290 0.006602 0.016892
citric.acid -0.010290 0.007183 0.017473
citric.acid -0.010290 0.007810 0.018100
citric.acid -0.010290 0.008484 0.018773
citric.acid -0.010290 0.009207 0.019497
citric.acid -0.010290 0.009983 0.020273
citric.acid -0.010290 0.010813 0.021102
citric.acid -0.010290 0.011698 0.021988
citric.acid -0.010290 0.012641 0.022930
citric.acid -0.010290 0.013641 0.023931
citric.acid -0.010290 0.014701 0.024990
citric.acid -0.010290 0.015819 0.026108
citric.acid -0.010290 0.016995 0.027284
citric.acid -0.010290 0.018227 0.028517
citric.acid -0.010290 0.019514 0.029804
citric.acid -0.010290 0.020852 0.031141
citric.acid -0.010290 0.022236 0.032526
citric.acid -0.010290 0.023662 0.033952
citric.acid -0.010290 0.025123 0.035412
citric.acid -0.010290 0.026610 0.036900
citric.acid -0.010290 0.028116 0.038406
citric.acid -0.010290 0.029630 0.039920
citric.acid -0.010290 0.031141 0.041430
citric.acid -0.010290 0.032635 0.042925
citric.acid -0.010290 0.034101 0.044390
citric.acid -0.010290 0.035523 0.045812
citric.acid -0.010290 0.036886 0.047176
citric.acid -0.010290 0.038176 0.048465
citric.acid -0.010290 0.039376 0.049666
citric.acid -0.010290 0.040471 0.050761
citric.acid -0.010290 0.041446 0.051736
citric.acid -0.010290 0.042287 0.052576
citric.acid -0.010290 0.042978 0.053268
citric.acid -0.010290 0.043509 0.053799
citric.acid -0.010290 0.043868 0.054158
citric.acid -0.010290 0.044046 0.054335
citric.acid -0.010290 0.044034 0.054324
citric.acid -0.010290 0.043809 0.054098
citric.acid -0.010290 0.043403 0.053692
citric.acid -0.010290 0.042798 0.053088
citric.acid -0.010290 0.041998 0.052288
citric.acid -0.010290 0.041005 0.051295
citric.acid -0.010290 0.039826 0.050116
citric.acid -0.010290 0.038470 0.048759
citric.acid -0.010290 0.036946 0.047236
citric.acid -0.010290 0.035268 0.045557
citric.acid -0.010290 0.033448 0.043738
citric.acid -0.010290 0.031503 0.041793
citric.acid -0.010290 0.029448 0.039738
citric.acid -0.010290 0.027301 0.037591
citric.acid -0.010290 0.025078 0.035368
citric.acid -0.010290 0.022798 0.033087
citric.acid -0.010290 0.020476 0.030766
citric.acid -0.010290 0.018131 0.028421
citric.acid -0.010290 0.015778 0.026067
citric.acid -0.010290 0.013432 0.023721
citric.acid -0.010290 0.011107 0.021397
citric.acid -0.010290 0.008817 0.019107
citric.acid -0.010290 0.006574 0.016863
citric.acid -0.010290 0.004386 0.014676
citric.acid -0.010290 0.002263 0.012553
citric.acid -0.010290 0.000213 0.010503
citric.acid -0.010290 -0.001758 0.008532
citric.acid -0.010290 -0.003646 0.006644
citric.acid -0.010290 -0.005448 0.004842
citric.acid -0.010290 -0.007160 0.003130
citric.acid -0.010290 -0.008782 0.001507
citric.acid -0.010290 -0.010314 0.000025
citric.acid -0.010290 -0.011757 0.001467
residual.sugar 0.033016 0.000000 0.033016
residual.sugar 0.033016 0.000041 0.032974
residual.sugar 0.033016 0.000045 0.032970
residual.sugar 0.033016 0.000050 0.032966
residual.sugar 0.033016 0.000055 0.032961
residual.sugar 0.033016 0.000060 0.032956
residual.sugar 0.033016 0.000066 0.032950
residual.sugar 0.033016 0.000072 0.032943
residual.sugar 0.033016 0.000079 0.032936
residual.sugar 0.033016 0.000087 0.032929
residual.sugar 0.033016 0.000096 0.032920
residual.sugar 0.033016 0.000105 0.032911
residual.sugar 0.033016 0.000115 0.032900
residual.sugar 0.033016 0.000126 0.032889
residual.sugar 0.033016 0.000139 0.032877
residual.sugar 0.033016 0.000153 0.032863
residual.sugar 0.033016 0.000167 0.032848
residual.sugar 0.033016 0.000184 0.032832
residual.sugar 0.033016 0.000202 0.032814
residual.sugar 0.033016 0.000222 0.032794
residual.sugar 0.033016 0.000244 0.032772
residual.sugar 0.033016 0.000268 0.032748
residual.sugar 0.033016 0.000294 0.032721
residual.sugar 0.033016 0.000323 0.032692
residual.sugar 0.033016 0.000355 0.032660
residual.sugar 0.033016 0.000391 0.032625
residual.sugar 0.033016 0.000429 0.032586
residual.sugar 0.033016 0.000472 0.032544
residual.sugar 0.033016 0.000519 0.032497
residual.sugar 0.033016 0.000571 0.032445
residual.sugar 0.033016 0.000628 0.032388
residual.sugar 0.033016 0.000691 0.032325
residual.sugar 0.033016 0.000760 0.032256
residual.sugar 0.033016 0.000836 0.032180
residual.sugar 0.033016 0.000920 0.032095
residual.sugar 0.033016 0.001013 0.032003
residual.sugar 0.033016 0.001115 0.031900
residual.sugar 0.033016 0.001228 0.031787
residual.sugar 0.033016 0.001353 0.031663
residual.sugar 0.033016 0.001490 0.031525
residual.sugar 0.033016 0.001642 0.031374
residual.sugar 0.033016 0.001809 0.031206
residual.sugar 0.033016 0.001994 0.031022
residual.sugar 0.033016 0.002197 0.030818
residual.sugar 0.033016 0.002422 0.030594
residual.sugar 0.033016 0.002669 0.030347
residual.sugar 0.033016 0.002940 0.030076
residual.sugar 0.033016 0.003239 0.029777
residual.sugar 0.033016 0.003566 0.029449
residual.sugar 0.033016 0.003925 0.029090
residual.sugar 0.033016 0.004318 0.028697
residual.sugar 0.033016 0.004747 0.028269
residual.sugar 0.033016 0.005214 0.027802
residual.sugar 0.033016 0.005720 0.027295
residual.sugar 0.033016 0.006269 0.026746
residual.sugar 0.033016 0.006861 0.026154
residual.sugar 0.033016 0.007498 0.025518
residual.sugar 0.033016 0.008179 0.024837
residual.sugar 0.033016 0.008906 0.024110
residual.sugar 0.033016 0.009677 0.023339
residual.sugar 0.033016 0.010492 0.022524
residual.sugar 0.033016 0.011349 0.021667
residual.sugar 0.033016 0.012244 0.020771
residual.sugar 0.033016 0.013176 0.019840
residual.sugar 0.033016 0.014140 0.018876
residual.sugar 0.033016 0.015131 0.017884
residual.sugar 0.033016 0.016145 0.016870
residual.sugar 0.033016 0.017176 0.015840
residual.sugar 0.033016 0.018206 0.014809
residual.sugar 0.033016 0.019250 0.013766
residual.sugar 0.033016 0.020291 0.012725
residual.sugar 0.033016 0.021323 0.011693
residual.sugar 0.033016 0.022340 0.010676
residual.sugar 0.033016 0.023335 0.009680
residual.sugar 0.033016 0.024304 0.008712
residual.sugar 0.033016 0.025239 0.007776
residual.sugar 0.033016 0.026137 0.006879
residual.sugar 0.033016 0.026992 0.006023
residual.sugar 0.033016 0.027801 0.005214
residual.sugar 0.033016 0.028560 0.004455
residual.sugar 0.033016 0.029267 0.003748
residual.sugar 0.033016 0.029919 0.003096
residual.sugar 0.033016 0.030516 0.002500
residual.sugar 0.033016 0.031055 0.001960
residual.sugar 0.033016 0.031538 0.001478
residual.sugar 0.033016 0.031964 0.001052
residual.sugar 0.033016 0.032334 0.000682
residual.sugar 0.033016 0.032650 0.000366
residual.sugar 0.033016 0.032912 0.000103
residual.sugar 0.033016 0.033124 0.000109
residual.sugar 0.033016 0.033288 0.000272
residual.sugar 0.033016 0.033406 0.000390
residual.sugar 0.033016 0.033481 0.000465
residual.sugar 0.033016 0.033516 0.000500
residual.sugar 0.033016 0.033515 0.000499
residual.sugar 0.033016 0.033480 0.000465
residual.sugar 0.033016 0.033416 0.000400
residual.sugar 0.033016 0.033324 0.000309
residual.sugar 0.033016 0.033209 0.000194
residual.sugar 0.033016 0.033074 0.000059
chlorides -0.092246 0.000000 0.092246
chlorides -0.092246 -0.000264 0.091983
chlorides -0.092246 -0.000289 0.091957
chlorides -0.092246 -0.000317 0.091929
chlorides -0.092246 -0.000348 0.091898
chlorides -0.092246 -0.000382 0.091864
chlorides -0.092246 -0.000419 0.091827
chlorides -0.092246 -0.000460 0.091786
chlorides -0.092246 -0.000504 0.091742
chlorides -0.092246 -0.000553 0.091693
chlorides -0.092246 -0.000607 0.091639
chlorides -0.092246 -0.000666 0.091580
chlorides -0.092246 -0.000730 0.091516
chlorides -0.092246 -0.000801 0.091445
chlorides -0.092246 -0.000878 0.091368
chlorides -0.092246 -0.000963 0.091283
chlorides -0.092246 -0.001056 0.091190
chlorides -0.092246 -0.001158 0.091088
chlorides -0.092246 -0.001270 0.090976
chlorides -0.092246 -0.001392 0.090854
chlorides -0.092246 -0.001526 0.090720
chlorides -0.092246 -0.001672 0.090574
chlorides -0.092246 -0.001832 0.090414
chlorides -0.092246 -0.002008 0.090238
chlorides -0.092246 -0.002200 0.090047
chlorides -0.092246 -0.002409 0.089837
chlorides -0.092246 -0.002638 0.089608
chlorides -0.092246 -0.002889 0.089358
chlorides -0.092246 -0.003162 0.089084
chlorides -0.092246 -0.003460 0.088786
chlorides -0.092246 -0.003785 0.088461
chlorides -0.092246 -0.004140 0.088106
chlorides -0.092246 -0.004527 0.087720
chlorides -0.092246 -0.004947 0.087299
chlorides -0.092246 -0.005405 0.086841
chlorides -0.092246 -0.005902 0.086344
chlorides -0.092246 -0.006442 0.085804
chlorides -0.092246 -0.007027 0.085219
chlorides -0.092246 -0.007662 0.084584
chlorides -0.092246 -0.008349 0.083898
chlorides -0.092246 -0.009091 0.083156
chlorides -0.092246 -0.009891 0.082355
chlorides -0.092246 -0.010754 0.081492
chlorides -0.092246 -0.011682 0.080564
chlorides -0.092246 -0.012679 0.079568
chlorides -0.092246 -0.013746 0.078500
chlorides -0.092246 -0.014888 0.077358
chlorides -0.092246 -0.016107 0.076139
chlorides -0.092246 -0.017404 0.074842
chlorides -0.092246 -0.018781 0.073465
chlorides -0.092246 -0.020239 0.072007
chlorides -0.092246 -0.021779 0.070468
chlorides -0.092246 -0.023400 0.068846
chlorides -0.092246 -0.025101 0.067145
chlorides -0.092246 -0.026881 0.065365
chlorides -0.092246 -0.028736 0.063510
chlorides -0.092246 -0.030664 0.061582
chlorides -0.092246 -0.032660 0.059586
chlorides -0.092246 -0.034718 0.057528
chlorides -0.092246 -0.036833 0.055413
chlorides -0.092246 -0.038998 0.053249
chlorides -0.092246 -0.041204 0.051042
chlorides -0.092246 -0.043444 0.048802
chlorides -0.092246 -0.045708 0.046538
chlorides -0.092246 -0.047989 0.044258
chlorides -0.092246 -0.050275 0.041971
chlorides -0.092246 -0.052558 0.039688
chlorides -0.092246 -0.054827 0.037419
chlorides -0.092246 -0.057083 0.035164
chlorides -0.092246 -0.059298 0.032948
chlorides -0.092246 -0.061472 0.030774
chlorides -0.092246 -0.063596 0.028650
chlorides -0.092246 -0.065663 0.026583
chlorides -0.092246 -0.067664 0.024582
chlorides -0.092246 -0.069594 0.022652
chlorides -0.092246 -0.071447 0.020799
chlorides -0.092246 -0.073218 0.019029
chlorides -0.092246 -0.074903 0.017343
chlorides -0.092246 -0.076500 0.015746
chlorides -0.092246 -0.078006 0.014240
chlorides -0.092246 -0.079422 0.012824
chlorides -0.092246 -0.080746 0.011500
chlorides -0.092246 -0.081980 0.010266
chlorides -0.092246 -0.083126 0.009120
chlorides -0.092246 -0.084185 0.008061
chlorides -0.092246 -0.085162 0.007084
chlorides -0.092246 -0.086059 0.006187
chlorides -0.092246 -0.086881 0.005365
chlorides -0.092246 -0.087632 0.004614
chlorides -0.092246 -0.088316 0.003930
chlorides -0.092246 -0.088938 0.003308
chlorides -0.092246 -0.089504 0.002743
chlorides -0.092246 -0.090016 0.002230
chlorides -0.092246 -0.090481 0.001765
chlorides -0.092246 -0.090901 0.001345
chlorides -0.092246 -0.091283 0.000964
chlorides -0.092246 -0.091628 0.000618
chlorides -0.092246 -0.091941 0.000305
chlorides -0.092246 -0.092226 0.000020
chlorides -0.092246 -0.092485 0.000238
free.sulfur.dioxide 0.045962 0.000000 0.045962
free.sulfur.dioxide 0.045962 -0.000095 0.046057
free.sulfur.dioxide 0.045962 -0.000104 0.046066
free.sulfur.dioxide 0.045962 -0.000114 0.046076
free.sulfur.dioxide 0.045962 -0.000126 0.046087
free.sulfur.dioxide 0.045962 -0.000138 0.046099
free.sulfur.dioxide 0.045962 -0.000151 0.046112
free.sulfur.dioxide 0.045962 -0.000165 0.046127
free.sulfur.dioxide 0.045962 -0.000181 0.046143
free.sulfur.dioxide 0.045962 -0.000198 0.046160
free.sulfur.dioxide 0.045962 -0.000217 0.046179
free.sulfur.dioxide 0.045962 -0.000238 0.046199
free.sulfur.dioxide 0.045962 -0.000260 0.046222
free.sulfur.dioxide 0.045962 -0.000285 0.046246
free.sulfur.dioxide 0.045962 -0.000312 0.046273
free.sulfur.dioxide 0.045962 -0.000341 0.046303
free.sulfur.dioxide 0.045962 -0.000373 0.046334
free.sulfur.dioxide 0.045962 -0.000408 0.046369
free.sulfur.dioxide 0.045962 -0.000445 0.046407
free.sulfur.dioxide 0.045962 -0.000487 0.046448
free.sulfur.dioxide 0.045962 -0.000531 0.046493
free.sulfur.dioxide 0.045962 -0.000580 0.046541
free.sulfur.dioxide 0.045962 -0.000632 0.046594
free.sulfur.dioxide 0.045962 -0.000689 0.046651
free.sulfur.dioxide 0.045962 -0.000751 0.046712
free.sulfur.dioxide 0.045962 -0.000817 0.046778
free.sulfur.dioxide 0.045962 -0.000888 0.046850
free.sulfur.dioxide 0.045962 -0.000965 0.046927
free.sulfur.dioxide 0.045962 -0.001048 0.047009
free.sulfur.dioxide 0.045962 -0.001136 0.047098
free.sulfur.dioxide 0.045962 -0.001231 0.047192
free.sulfur.dioxide 0.045962 -0.001332 0.047293
free.sulfur.dioxide 0.045962 -0.001439 0.047400
free.sulfur.dioxide 0.045962 -0.001552 0.047514
free.sulfur.dioxide 0.045962 -0.001671 0.047633
free.sulfur.dioxide 0.045962 -0.001797 0.047758
free.sulfur.dioxide 0.045962 -0.001928 0.047889
free.sulfur.dioxide 0.045962 -0.002064 0.048026
free.sulfur.dioxide 0.045962 -0.002205 0.048166
free.sulfur.dioxide 0.045962 -0.002349 0.048310
free.sulfur.dioxide 0.045962 -0.002495 0.048457
free.sulfur.dioxide 0.045962 -0.002643 0.048604
free.sulfur.dioxide 0.045962 -0.002789 0.048751
free.sulfur.dioxide 0.045962 -0.002933 0.048894
free.sulfur.dioxide 0.045962 -0.003071 0.049033
free.sulfur.dioxide 0.045962 -0.003202 0.049163
free.sulfur.dioxide 0.045962 -0.003321 0.049282
free.sulfur.dioxide 0.045962 -0.003425 0.049387
free.sulfur.dioxide 0.045962 -0.003511 0.049472
free.sulfur.dioxide 0.045962 -0.003573 0.049535
free.sulfur.dioxide 0.045962 -0.003608 0.049570
free.sulfur.dioxide 0.045962 -0.003610 0.049572
free.sulfur.dioxide 0.045962 -0.003574 0.049536
free.sulfur.dioxide 0.045962 -0.003495 0.049456
free.sulfur.dioxide 0.045962 -0.003367 0.049328
free.sulfur.dioxide 0.045962 -0.003184 0.049146
free.sulfur.dioxide 0.045962 -0.002942 0.048903
free.sulfur.dioxide 0.045962 -0.002634 0.048596
free.sulfur.dioxide 0.045962 -0.002257 0.048219
free.sulfur.dioxide 0.045962 -0.001806 0.047768
free.sulfur.dioxide 0.045962 -0.001277 0.047238
free.sulfur.dioxide 0.045962 -0.000666 0.046628
free.sulfur.dioxide 0.045962 0.000028 0.045934
free.sulfur.dioxide 0.045962 0.000807 0.045154
free.sulfur.dioxide 0.045962 0.001672 0.044289
free.sulfur.dioxide 0.045962 0.002623 0.043339
free.sulfur.dioxide 0.045962 0.003658 0.042304
free.sulfur.dioxide 0.045962 0.004775 0.041186
free.sulfur.dioxide 0.045962 0.005974 0.039987
free.sulfur.dioxide 0.045962 0.007245 0.038716
free.sulfur.dioxide 0.045962 0.008586 0.037375
free.sulfur.dioxide 0.045962 0.009991 0.035971
free.sulfur.dioxide 0.045962 0.011453 0.034509
free.sulfur.dioxide 0.045962 0.012964 0.032997
free.sulfur.dioxide 0.045962 0.014518 0.031443
free.sulfur.dioxide 0.045962 0.016105 0.029856
free.sulfur.dioxide 0.045962 0.017718 0.028244
free.sulfur.dioxide 0.045962 0.019347 0.026615
free.sulfur.dioxide 0.045962 0.020983 0.024979
free.sulfur.dioxide 0.045962 0.022617 0.023344
free.sulfur.dioxide 0.045962 0.024242 0.021719
free.sulfur.dioxide 0.045962 0.025850 0.020112
free.sulfur.dioxide 0.045962 0.027431 0.018530
free.sulfur.dioxide 0.045962 0.028981 0.016980
free.sulfur.dioxide 0.045962 0.030493 0.015469
free.sulfur.dioxide 0.045962 0.031961 0.014001
free.sulfur.dioxide 0.045962 0.033380 0.012581
free.sulfur.dioxide 0.045962 0.034748 0.011214
free.sulfur.dioxide 0.045962 0.036060 0.009901
free.sulfur.dioxide 0.045962 0.037316 0.008646
free.sulfur.dioxide 0.045962 0.038513 0.007449
free.sulfur.dioxide 0.045962 0.039650 0.006311
free.sulfur.dioxide 0.045962 0.040728 0.005233
free.sulfur.dioxide 0.045962 0.041747 0.004214
free.sulfur.dioxide 0.045962 0.042709 0.003253
free.sulfur.dioxide 0.045962 0.043613 0.002348
free.sulfur.dioxide 0.045962 0.044463 0.001499
free.sulfur.dioxide 0.045962 0.045259 0.000703
free.sulfur.dioxide 0.045962 0.046004 0.000043
free.sulfur.dioxide 0.045962 0.046701 0.000739
total.sulfur.dioxide -0.111936 0.000000 0.111936
total.sulfur.dioxide -0.111936 -0.000357 0.111579
total.sulfur.dioxide -0.111936 -0.000391 0.111545
total.sulfur.dioxide -0.111936 -0.000429 0.111507
total.sulfur.dioxide -0.111936 -0.000471 0.111465
total.sulfur.dioxide -0.111936 -0.000517 0.111420
total.sulfur.dioxide -0.111936 -0.000567 0.111370
total.sulfur.dioxide -0.111936 -0.000621 0.111315
total.sulfur.dioxide -0.111936 -0.000681 0.111255
total.sulfur.dioxide -0.111936 -0.000747 0.111189
total.sulfur.dioxide -0.111936 -0.000819 0.111117
total.sulfur.dioxide -0.111936 -0.000898 0.111038
total.sulfur.dioxide -0.111936 -0.000985 0.110951
total.sulfur.dioxide -0.111936 -0.001080 0.110856
total.sulfur.dioxide -0.111936 -0.001184 0.110753
total.sulfur.dioxide -0.111936 -0.001297 0.110639
total.sulfur.dioxide -0.111936 -0.001421 0.110515
total.sulfur.dioxide -0.111936 -0.001557 0.110379
total.sulfur.dioxide -0.111936 -0.001706 0.110230
total.sulfur.dioxide -0.111936 -0.001869 0.110067
total.sulfur.dioxide -0.111936 -0.002046 0.109890
total.sulfur.dioxide -0.111936 -0.002240 0.109696
total.sulfur.dioxide -0.111936 -0.002452 0.109484
total.sulfur.dioxide -0.111936 -0.002684 0.109252
total.sulfur.dioxide -0.111936 -0.002936 0.109000
total.sulfur.dioxide -0.111936 -0.003211 0.108725
total.sulfur.dioxide -0.111936 -0.003511 0.108425
total.sulfur.dioxide -0.111936 -0.003838 0.108098
total.sulfur.dioxide -0.111936 -0.004193 0.107743
total.sulfur.dioxide -0.111936 -0.004580 0.107357
total.sulfur.dioxide -0.111936 -0.004999 0.106937
total.sulfur.dioxide -0.111936 -0.005455 0.106481
total.sulfur.dioxide -0.111936 -0.005949 0.105987
total.sulfur.dioxide -0.111936 -0.006484 0.105452
total.sulfur.dioxide -0.111936 -0.007062 0.104874
total.sulfur.dioxide -0.111936 -0.007688 0.104248
total.sulfur.dioxide -0.111936 -0.008363 0.103573
total.sulfur.dioxide -0.111936 -0.009090 0.102846
total.sulfur.dioxide -0.111936 -0.009872 0.102064
total.sulfur.dioxide -0.111936 -0.010713 0.101224
total.sulfur.dioxide -0.111936 -0.011614 0.100323
total.sulfur.dioxide -0.111936 -0.012578 0.099358
total.sulfur.dioxide -0.111936 -0.013608 0.098328
total.sulfur.dioxide -0.111936 -0.014706 0.097231
total.sulfur.dioxide -0.111936 -0.015873 0.096063
total.sulfur.dioxide -0.111936 -0.017112 0.094824
total.sulfur.dioxide -0.111936 -0.018423 0.093513
total.sulfur.dioxide -0.111936 -0.019808 0.092128
total.sulfur.dioxide -0.111936 -0.021267 0.090669
total.sulfur.dioxide -0.111936 -0.022799 0.089137
total.sulfur.dioxide -0.111936 -0.024403 0.087533
total.sulfur.dioxide -0.111936 -0.026080 0.085856
total.sulfur.dioxide -0.111936 -0.027826 0.084110
total.sulfur.dioxide -0.111936 -0.029639 0.082297
total.sulfur.dioxide -0.111936 -0.031518 0.080418
total.sulfur.dioxide -0.111936 -0.033458 0.078478
total.sulfur.dioxide -0.111936 -0.035456 0.076480
total.sulfur.dioxide -0.111936 -0.037508 0.074428
total.sulfur.dioxide -0.111936 -0.039611 0.072326
total.sulfur.dioxide -0.111936 -0.041758 0.070178
total.sulfur.dioxide -0.111936 -0.043947 0.067989
total.sulfur.dioxide -0.111936 -0.046172 0.065764
total.sulfur.dioxide -0.111936 -0.048428 0.063508
total.sulfur.dioxide -0.111936 -0.050711 0.061225
total.sulfur.dioxide -0.111936 -0.053016 0.058920
total.sulfur.dioxide -0.111936 -0.055339 0.056597
total.sulfur.dioxide -0.111936 -0.057674 0.054262
total.sulfur.dioxide -0.111936 -0.060016 0.051920
total.sulfur.dioxide -0.111936 -0.062364 0.049572
total.sulfur.dioxide -0.111936 -0.064708 0.047228
total.sulfur.dioxide -0.111936 -0.067044 0.044892
total.sulfur.dioxide -0.111936 -0.069369 0.042567
total.sulfur.dioxide -0.111936 -0.071675 0.040261
total.sulfur.dioxide -0.111936 -0.073959 0.037977
total.sulfur.dioxide -0.111936 -0.076214 0.035722
total.sulfur.dioxide -0.111936 -0.078435 0.033501
total.sulfur.dioxide -0.111936 -0.080616 0.031320
total.sulfur.dioxide -0.111936 -0.082752 0.029184
total.sulfur.dioxide -0.111936 -0.084837 0.027099
total.sulfur.dioxide -0.111936 -0.086867 0.025069
total.sulfur.dioxide -0.111936 -0.088836 0.023100
total.sulfur.dioxide -0.111936 -0.090741 0.021195
total.sulfur.dioxide -0.111936 -0.092577 0.019359
total.sulfur.dioxide -0.111936 -0.094342 0.017594
total.sulfur.dioxide -0.111936 -0.096032 0.015904
total.sulfur.dioxide -0.111936 -0.097647 0.014289
total.sulfur.dioxide -0.111936 -0.099184 0.012752
total.sulfur.dioxide -0.111936 -0.100644 0.011292
total.sulfur.dioxide -0.111936 -0.102026 0.009910
total.sulfur.dioxide -0.111936 -0.103332 0.008605
total.sulfur.dioxide -0.111936 -0.104562 0.007374
total.sulfur.dioxide -0.111936 -0.105718 0.006218
total.sulfur.dioxide -0.111936 -0.106803 0.005133
total.sulfur.dioxide -0.111936 -0.107820 0.004116
total.sulfur.dioxide -0.111936 -0.108770 0.003166
total.sulfur.dioxide -0.111936 -0.109658 0.002278
total.sulfur.dioxide -0.111936 -0.110486 0.001450
total.sulfur.dioxide -0.111936 -0.111258 0.000678
total.sulfur.dioxide -0.111936 -0.111976 0.000040
total.sulfur.dioxide -0.111936 -0.112644 0.000708
density -0.044894 0.000000 0.044894
density -0.044894 -0.000317 0.044576
density -0.044894 -0.000348 0.044546
density -0.044894 -0.000382 0.044512
density -0.044894 -0.000419 0.044475
density -0.044894 -0.000460 0.044434
density -0.044894 -0.000504 0.044389
density -0.044894 -0.000553 0.044340
density -0.044894 -0.000607 0.044287
density -0.044894 -0.000666 0.044228
density -0.044894 -0.000730 0.044164
density -0.044894 -0.000801 0.044093
density -0.044894 -0.000878 0.044015
density -0.044894 -0.000963 0.043931
density -0.044894 -0.001056 0.043838
density -0.044894 -0.001158 0.043736
density -0.044894 -0.001269 0.043624
density -0.044894 -0.001391 0.043502
density -0.044894 -0.001525 0.043369
density -0.044894 -0.001671 0.043223
density -0.044894 -0.001831 0.043063
density -0.044894 -0.002006 0.042888
density -0.044894 -0.002198 0.042696
density -0.044894 -0.002407 0.042487
density -0.044894 -0.002635 0.042259
density -0.044894 -0.002885 0.042009
density -0.044894 -0.003157 0.041737
density -0.044894 -0.003454 0.041440
density -0.044894 -0.003778 0.041116
density -0.044894 -0.004131 0.040763
density -0.044894 -0.004515 0.040378
density -0.044894 -0.004933 0.039960
density -0.044894 -0.005388 0.039506
density -0.044894 -0.005881 0.039012
density -0.044894 -0.006417 0.038477
density -0.044894 -0.006997 0.037897
density -0.044894 -0.007625 0.037269
density -0.044894 -0.008303 0.036590
density -0.044894 -0.009036 0.035858
density -0.044894 -0.009825 0.035069
density -0.044894 -0.010673 0.034221
density -0.044894 -0.011584 0.033310
density -0.044894 -0.012560 0.032334
density -0.044894 -0.013603 0.031291
density -0.044894 -0.014715 0.030179
density -0.044894 -0.015897 0.028997
density -0.044894 -0.017151 0.027743
density -0.044894 -0.018476 0.026418
density -0.044894 -0.019872 0.025022
density -0.044894 -0.021338 0.023556
density -0.044894 -0.022871 0.022022
density -0.044894 -0.024469 0.020425
density -0.044894 -0.026126 0.018768
density -0.044894 -0.027837 0.017056
density -0.044894 -0.029597 0.015297
density -0.044894 -0.031397 0.013497
density -0.044894 -0.033228 0.011666
density -0.044894 -0.035081 0.009812
density -0.044894 -0.036947 0.007947
density -0.044894 -0.038812 0.006081
density -0.044894 -0.040668 0.004226
density -0.044894 -0.042500 0.002394
density -0.044894 -0.044298 0.000596
density -0.044894 -0.046050 0.001156
density -0.044894 -0.047744 0.002850
density -0.044894 -0.049369 0.004475
density -0.044894 -0.050915 0.006021
density -0.044894 -0.052373 0.007479
density -0.044894 -0.053729 0.008835
density -0.044894 -0.054982 0.010088
density -0.044894 -0.056124 0.011231
density -0.044894 -0.057150 0.012256
density -0.044894 -0.058055 0.013161
density -0.044894 -0.058837 0.013943
density -0.044894 -0.059492 0.014599
density -0.044894 -0.060022 0.015128
density -0.044894 -0.060425 0.015531
density -0.044894 -0.060702 0.015808
density -0.044894 -0.060855 0.015961
density -0.044894 -0.060887 0.015993
density -0.044894 -0.060800 0.015906
density -0.044894 -0.060599 0.015705
density -0.044894 -0.060288 0.015394
density -0.044894 -0.059872 0.014978
density -0.044894 -0.059356 0.014462
density -0.044894 -0.058746 0.013852
density -0.044894 -0.058048 0.013154
density -0.044894 -0.057269 0.012375
density -0.044894 -0.056414 0.011521
density -0.044894 -0.055492 0.010598
density -0.044894 -0.054509 0.009615
density -0.044894 -0.053472 0.008578
density -0.044894 -0.052388 0.007494
density -0.044894 -0.051265 0.006371
density -0.044894 -0.050109 0.005215
density -0.044894 -0.048927 0.004033
density -0.044894 -0.047727 0.002833
density -0.044894 -0.046514 0.001621
density -0.044894 -0.045297 0.000403
density -0.044894 -0.044079 0.000814
pH -0.054031 0.000000 0.054031
pH -0.054031 -0.000121 0.053909
pH -0.054031 -0.000133 0.053898
pH -0.054031 -0.000146 0.053885
pH -0.054031 -0.000160 0.053871
pH -0.054031 -0.000176 0.053855
pH -0.054031 -0.000193 0.053838
pH -0.054031 -0.000211 0.053820
pH -0.054031 -0.000231 0.053799
pH -0.054031 -0.000254 0.053777
pH -0.054031 -0.000278 0.053753
pH -0.054031 -0.000304 0.053726
pH -0.054031 -0.000333 0.053697
pH -0.054031 -0.000365 0.053665
pH -0.054031 -0.000400 0.053631
pH -0.054031 -0.000438 0.053593
pH -0.054031 -0.000479 0.053551
pH -0.054031 -0.000524 0.053506
pH -0.054031 -0.000574 0.053457
pH -0.054031 -0.000628 0.053403
pH -0.054031 -0.000686 0.053345
pH -0.054031 -0.000750 0.053281
pH -0.054031 -0.000819 0.053212
pH -0.054031 -0.000895 0.053136
pH -0.054031 -0.000976 0.053054
pH -0.054031 -0.001065 0.052965
pH -0.054031 -0.001162 0.052869
pH -0.054031 -0.001266 0.052765
pH -0.054031 -0.001379 0.052652
pH -0.054031 -0.001500 0.052530
pH -0.054031 -0.001632 0.052399
pH -0.054031 -0.001773 0.052257
pH -0.054031 -0.001925 0.052105
pH -0.054031 -0.002089 0.051942
pH -0.054031 -0.002264 0.051767
pH -0.054031 -0.002451 0.051580
pH -0.054031 -0.002651 0.051380
pH -0.054031 -0.002864 0.051167
pH -0.054031 -0.003090 0.050941
pH -0.054031 -0.003329 0.050701
pH -0.054031 -0.003583 0.050448
pH -0.054031 -0.003850 0.050181
pH -0.054031 -0.004131 0.049899
pH -0.054031 -0.004427 0.049604
pH -0.054031 -0.004736 0.049295
pH -0.054031 -0.005058 0.048972
pH -0.054031 -0.005394 0.048636
pH -0.054031 -0.005743 0.048287
pH -0.054031 -0.006105 0.047925
pH -0.054031 -0.006480 0.047551
pH -0.054031 -0.006867 0.047164
pH -0.054031 -0.007266 0.046765
pH -0.054031 -0.007678 0.046353
pH -0.054031 -0.008102 0.045929
pH -0.054031 -0.008539 0.045492
pH -0.054031 -0.008989 0.045041
pH -0.054031 -0.009455 0.044576
pH -0.054031 -0.009936 0.044095
pH -0.054031 -0.010435 0.043596
pH -0.054031 -0.010953 0.043077
pH -0.054031 -0.011494 0.042537
pH -0.054031 -0.012058 0.041973
pH -0.054031 -0.012650 0.041381
pH -0.054031 -0.013271 0.040760
pH -0.054031 -0.013924 0.040106
pH -0.054031 -0.014613 0.039417
pH -0.054031 -0.015341 0.038690
pH -0.054031 -0.016108 0.037922
pH -0.054031 -0.016931 0.037100
pH -0.054031 -0.017790 0.036241
pH -0.054031 -0.018695 0.035336
pH -0.054031 -0.019647 0.034384
pH -0.054031 -0.020646 0.033385
pH -0.054031 -0.021692 0.032339
pH -0.054031 -0.022783 0.031248
pH -0.054031 -0.023918 0.030112
pH -0.054031 -0.025095 0.028936
pH -0.054031 -0.026310 0.027720
pH -0.054031 -0.027561 0.026470
pH -0.054031 -0.028843 0.025188
pH -0.054031 -0.030153 0.023878
pH -0.054031 -0.031485 0.022546
pH -0.054031 -0.032836 0.021195
pH -0.054031 -0.034201 0.019830
pH -0.054031 -0.035576 0.018455
pH -0.054031 -0.036956 0.017075
pH -0.054031 -0.038337 0.015694
pH -0.054031 -0.039715 0.014315
pH -0.054031 -0.041087 0.012944
pH -0.054031 -0.042448 0.011583
pH -0.054031 -0.043795 0.010235
pH -0.054031 -0.045126 0.008904
pH -0.054031 -0.046438 0.007593
pH -0.054031 -0.047728 0.006303
pH -0.054031 -0.048993 0.005037
pH -0.054031 -0.050233 0.003798
pH -0.054031 -0.051443 0.002587
pH -0.054031 -0.052624 0.001407
pH -0.054031 -0.053773 0.000258
pH -0.054031 -0.054889 0.000858
sulphates 0.131124 0.000000 0.131124
sulphates 0.131124 0.000420 0.130704
sulphates 0.131124 0.000461 0.130663
sulphates 0.131124 0.000506 0.130618
sulphates 0.131124 0.000555 0.130569
sulphates 0.131124 0.000609 0.130515
sulphates 0.131124 0.000668 0.130456
sulphates 0.131124 0.000732 0.130391
sulphates 0.131124 0.000803 0.130321
sulphates 0.131124 0.000881 0.130243
sulphates 0.131124 0.000966 0.130158
sulphates 0.131124 0.001059 0.130065
sulphates 0.131124 0.001162 0.129962
sulphates 0.131124 0.001273 0.129850
sulphates 0.131124 0.001396 0.129728
sulphates 0.131124 0.001530 0.129594
sulphates 0.131124 0.001677 0.129447
sulphates 0.131124 0.001838 0.129286
sulphates 0.131124 0.002014 0.129110
sulphates 0.131124 0.002206 0.128918
sulphates 0.131124 0.002416 0.128708
sulphates 0.131124 0.002646 0.128478
sulphates 0.131124 0.002897 0.128227
sulphates 0.131124 0.003171 0.127953
sulphates 0.131124 0.003470 0.127654
sulphates 0.131124 0.003797 0.127327
sulphates 0.131124 0.004153 0.126971
sulphates 0.131124 0.004541 0.126583
sulphates 0.131124 0.004963 0.126161
sulphates 0.131124 0.005423 0.125701
sulphates 0.131124 0.005923 0.125201
sulphates 0.131124 0.006467 0.124657
sulphates 0.131124 0.007057 0.124067
sulphates 0.131124 0.007696 0.123428
sulphates 0.131124 0.008390 0.122734
sulphates 0.131124 0.009140 0.121984
sulphates 0.131124 0.009951 0.121173
sulphates 0.131124 0.010827 0.120297
sulphates 0.131124 0.011771 0.119353
sulphates 0.131124 0.012788 0.118336
sulphates 0.131124 0.013880 0.117244
sulphates 0.131124 0.015053 0.116071
sulphates 0.131124 0.016310 0.114814
sulphates 0.131124 0.017653 0.113471
sulphates 0.131124 0.019087 0.112037
sulphates 0.131124 0.020615 0.110509
sulphates 0.131124 0.022238 0.108886
sulphates 0.131124 0.023960 0.107164
sulphates 0.131124 0.025781 0.105343
sulphates 0.131124 0.027702 0.103421
sulphates 0.131124 0.029725 0.101399
sulphates 0.131124 0.031849 0.099275
sulphates 0.131124 0.034073 0.097051
sulphates 0.131124 0.036394 0.094730
sulphates 0.131124 0.038810 0.092314
sulphates 0.131124 0.041318 0.089806
sulphates 0.131124 0.043914 0.087210
sulphates 0.131124 0.046591 0.084533
sulphates 0.131124 0.049343 0.081781
sulphates 0.131124 0.052165 0.078959
sulphates 0.131124 0.055048 0.076076
sulphates 0.131124 0.057983 0.073141
sulphates 0.131124 0.060963 0.070161
sulphates 0.131124 0.063977 0.067147
sulphates 0.131124 0.067015 0.064109
sulphates 0.131124 0.070068 0.061056
sulphates 0.131124 0.073124 0.058000
sulphates 0.131124 0.076174 0.054950
sulphates 0.131124 0.079208 0.051916
sulphates 0.131124 0.082212 0.048912
sulphates 0.131124 0.085177 0.045947
sulphates 0.131124 0.088093 0.043030
sulphates 0.131124 0.090951 0.040173
sulphates 0.131124 0.093742 0.037382
sulphates 0.131124 0.096455 0.034668
sulphates 0.131124 0.099085 0.032039
sulphates 0.131124 0.101623 0.029501
sulphates 0.131124 0.104064 0.027060
sulphates 0.131124 0.106402 0.024722
sulphates 0.131124 0.108632 0.022492
sulphates 0.131124 0.110752 0.020372
sulphates 0.131124 0.112759 0.018365
sulphates 0.131124 0.114651 0.016473
sulphates 0.131124 0.116429 0.014695
sulphates 0.131124 0.118093 0.013031
sulphates 0.131124 0.119643 0.011480
sulphates 0.131124 0.121084 0.010040
sulphates 0.131124 0.122416 0.008708
sulphates 0.131124 0.123645 0.007479
sulphates 0.131124 0.124773 0.006351
sulphates 0.131124 0.125805 0.005319
sulphates 0.131124 0.126747 0.004377
sulphates 0.131124 0.127602 0.003522
sulphates 0.131124 0.128377 0.002747
sulphates 0.131124 0.129076 0.002048
sulphates 0.131124 0.129705 0.001419
sulphates 0.131124 0.130269 0.000855
sulphates 0.131124 0.130772 0.000352
sulphates 0.131124 0.131221 0.000097
sulphates 0.131124 0.131619 0.000495
alcohol 0.275780 0.000000 0.275780
alcohol 0.275780 0.000890 0.274891
alcohol 0.275780 0.000976 0.274804
alcohol 0.275780 0.001071 0.274709
alcohol 0.275780 0.001175 0.274605
alcohol 0.275780 0.001289 0.274491
alcohol 0.275780 0.001414 0.274366
alcohol 0.275780 0.001551 0.274229
alcohol 0.275780 0.001701 0.274079
alcohol 0.275780 0.001866 0.273915
alcohol 0.275780 0.002046 0.273734
alcohol 0.275780 0.002244 0.273536
alcohol 0.275780 0.002461 0.273320
alcohol 0.275780 0.002698 0.273082
alcohol 0.275780 0.002958 0.272823
alcohol 0.275780 0.003243 0.272538
alcohol 0.275780 0.003554 0.272226
alcohol 0.275780 0.003895 0.271885
alcohol 0.275780 0.004269 0.271512
alcohol 0.275780 0.004677 0.271103
alcohol 0.275780 0.005124 0.270657
alcohol 0.275780 0.005612 0.270169
alcohol 0.275780 0.006146 0.269635
alcohol 0.275780 0.006729 0.269052
alcohol 0.275780 0.007365 0.268415
alcohol 0.275780 0.008060 0.267720
alcohol 0.275780 0.008818 0.266962
alcohol 0.275780 0.009645 0.266136
alcohol 0.275780 0.010545 0.265235
alcohol 0.275780 0.011526 0.264254
alcohol 0.275780 0.012593 0.263187
alcohol 0.275780 0.013753 0.262027
alcohol 0.275780 0.015014 0.260767
alcohol 0.275780 0.016381 0.259399
alcohol 0.275780 0.017864 0.257916
alcohol 0.275780 0.019471 0.256310
alcohol 0.275780 0.021208 0.254573
alcohol 0.275780 0.023085 0.252696
alcohol 0.275780 0.025109 0.250671
alcohol 0.275780 0.027291 0.248490
alcohol 0.275780 0.029636 0.246144
alcohol 0.275780 0.032155 0.243626
alcohol 0.275780 0.034854 0.240927
alcohol 0.275780 0.037741 0.238040
alcohol 0.275780 0.040822 0.234959
alcohol 0.275780 0.044103 0.231678
alcohol 0.275780 0.047589 0.228192
alcohol 0.275780 0.051283 0.224498
alcohol 0.275780 0.055187 0.220593
alcohol 0.275780 0.059302 0.216478
alcohol 0.275780 0.063627 0.212154
alcohol 0.275780 0.068158 0.207622
alcohol 0.275780 0.072890 0.202890
alcohol 0.275780 0.077817 0.197964
alcohol 0.275780 0.082927 0.192853
alcohol 0.275780 0.088211 0.187569
alcohol 0.275780 0.093654 0.182126
alcohol 0.275780 0.099240 0.176540
alcohol 0.275780 0.104953 0.170827
alcohol 0.275780 0.110773 0.165007
alcohol 0.275780 0.116681 0.159100
alcohol 0.275780 0.122654 0.153126
alcohol 0.275780 0.128672 0.147109
alcohol 0.275780 0.134711 0.141069
alcohol 0.275780 0.140752 0.135029
alcohol 0.275780 0.146771 0.129010
alcohol 0.275780 0.152748 0.123032
alcohol 0.275780 0.158665 0.117116
alcohol 0.275780 0.164503 0.111277
alcohol 0.275780 0.170246 0.105535
alcohol 0.275780 0.175879 0.099902
alcohol 0.275780 0.181389 0.094392
alcohol 0.275780 0.186765 0.089015
alcohol 0.275780 0.191999 0.083781
alcohol 0.275780 0.197084 0.078697
alcohol 0.275780 0.202014 0.073766
alcohol 0.275780 0.206786 0.068995
alcohol 0.275780 0.211398 0.064383
alcohol 0.275780 0.215849 0.059931
alcohol 0.275780 0.220141 0.055640
alcohol 0.275780 0.224274 0.051506
alcohol 0.275780 0.228251 0.047529
alcohol 0.275780 0.232076 0.043705
alcohol 0.275780 0.235751 0.040030
alcohol 0.275780 0.239280 0.036500
alcohol 0.275780 0.242669 0.033112
alcohol 0.275780 0.245920 0.029860
alcohol 0.275780 0.249039 0.026742
alcohol 0.275780 0.252029 0.023752
alcohol 0.275780 0.254895 0.020886
alcohol 0.275780 0.257640 0.018141
alcohol 0.275780 0.260269 0.015512
alcohol 0.275780 0.262784 0.012996
alcohol 0.275780 0.265191 0.010590
alcohol 0.275780 0.267491 0.008289
alcohol 0.275780 0.269689 0.006092
alcohol 0.275780 0.271787 0.003994
alcohol 0.275780 0.273787 0.001993
alcohol 0.275780 0.275694 0.000086
alcohol 0.275780 0.277509 0.001729

4.7.6 Perbandingan Prediksi

red_prediction_comparison <- tibble(
  actual = red_test$quality,
  manual = red_manual_pred,
  package = red_package_pred
)

red_prediction_comparison %>% head(10)

4.7.7 Evaluasi Manual vs Package

red_metrics_comparison <- bind_rows(
  red_manual_metrics %>% mutate(method = "Manual Ridge"),
  red_package_metrics %>% mutate(method = "Package Ridge")
) %>%
  select(method, everything())

kable(red_metrics_comparison, digits = 4, caption = "Performa Manual vs Package — Red Wine")
Performa Manual vs Package — Red Wine
method RMSE MAE R2
Manual Ridge 0.6515 0.4956 0.3052
Package Ridge 0.6515 0.4955 0.3052

Hasil evaluasi menunjukkan bahwa Manual Ridge dan Package Ridge menghasilkan performa yang hampir identik. Keduanya memiliki RMSE = 0,6515 dan R² = 0,3052, sedangkan nilai MAE hanya berbeda sangat kecil, yaitu 0,4956 pada metode manual dan 0,4955 pada package. Kesamaan hasil ini menunjukkan bahwa perhitungan Ridge secara manual telah mengikuti formulasi dan proses standardisasi yang konsisten dengan implementasi package, sehingga kedua pendekatan menghasilkan prediksi yang praktis sama. Dengan demikian, package R dapat digunakan untuk memperoleh hasil yang setara dengan perhitungan manual tanpa mengubah hasil model secara berarti.

4.7.8 Diagnostik Residual

red_residual_df <- tibble(
  fitted = red_package_pred,
  residual = red_test$quality - red_package_pred
)

ggplot(red_residual_df, aes(fitted, residual)) +
  geom_point(alpha = .45) +
  geom_hline(yintercept = 0, linetype = "dashed") +
  geom_smooth(method = "loess", se = TRUE) +
  labs(title = "Residual vs Predicted — Red Wine", x = "Predicted", y = "Residual") +
  theme_minimal(base_size = 12)

4.7.9 Actual vs Predicted

red_plot <- tibble(
  actual = red_test$quality,
  manual = red_manual_pred,
  package = red_package_pred
) %>%
  pivot_longer(-actual, names_to = "method", values_to = "predicted")

ggplot(red_plot, aes(actual, predicted)) +
  geom_point(alpha = .35) +
  geom_abline(slope = 1, intercept = 0, linetype = "dashed") +
  facet_wrap(~method) +
  labs(title = "Actual vs Predicted — Red Wine", x = "Actual Quality", y = "Predicted Quality") +
  theme_minimal(base_size = 12)

Plot actual vs predicted menunjukkan pola yang hampir sama antara hasil manual dan package. Titik prediksi pada kedua metode tersebar pada rentang kualitas yang serupa, tetapi sebagian besar prediksi cenderung terkonsentrasi di sekitar nilai 5–6, sementara nilai kualitas aktual yang lebih tinggi tidak selalu diikuti prediksi yang sama tinggi. Garis putus-putus menunjukkan kondisi prediksi ideal, yaitu ketika nilai prediksi sama dengan nilai aktual. Jarak titik-titik terhadap garis tersebut menunjukkan adanya kesalahan prediksi, terutama pada pengamatan dengan kualitas aktual yang lebih rendah atau lebih tinggi. Secara visual, kedua metode menghasilkan pola prediksi yang sangat mirip.

4.8 Benchmark Red Wine

4.8.1 OLS

red_ols <- linear_reg() %>% set_engine("lm") %>% fit(quality ~ ., data = red_train)
red_ols_pred <- predict(red_ols, new_data = red_test)$.pred
red_ols_metrics <- metric_table(red_test$quality, red_ols_pred)

4.8.2 Random Forest

set.seed(12345)
red_rf <- randomForest(
  quality ~ ., data = red_train,
  ntree = 500,
  mtry = floor(sqrt(length(predictors))),
  importance = TRUE
)
red_rf_pred <- predict(red_rf, red_test)
red_rf_metrics <- metric_table(red_test$quality, red_rf_pred)

4.8.3 Perbandingan Model

red_model_comparison <- bind_rows(
  red_package_metrics %>% mutate(model = "Ridge Package"),
  red_ols_metrics %>% mutate(model = "OLS"),
  red_rf_metrics %>% mutate(model = "Random Forest")
) %>% select(model, everything())

kable(red_model_comparison, digits = 4, caption = "Benchmark Model — Red Wine")
Benchmark Model — Red Wine
model RMSE MAE R2
Ridge Package 0.6515 0.4955 0.3052
OLS 0.6524 0.4952 0.3049
Random Forest 0.5822 0.4192 0.4466

Pada Red Wine, Ridge Package dan OLS juga menghasilkan performa yang hampir sama, dengan RMSE masing-masing 0,6515 dan 0,6524, MAE 0,4955 dan 0,4952, serta R² 0,3052 dan 0,3049. Random Forest menghasilkan RMSE 0,5822, MAE 0,4192, dan R² 0,4466. Dengan demikian, hasil benchmark memperlihatkan bahwa kedua pendekatan regresi linear memberikan hasil yang sangat berdekatan, sementara Random Forest menghasilkan nilai RMSE dan MAE yang lebih rendah serta R² yang lebih tinggi pada data Red Wine.

5 White Wine

5.1 Import Data

white_url <- paste0(
  "https://archive.ics.uci.edu/ml/machine-learning-databases/",
  "wine-quality/winequality-white.csv"
)

white_wine <- read.csv(white_url, sep = ";")
white_model <- white_wine %>% select(all_of(c(predictors, response)))

cat("Observasi:", nrow(white_model), "\n")
## Observasi: 4898
cat("Variabel:", ncol(white_model), "\n")
## Variabel: 12

5.2 Pemeriksaan Data

white_missing <- colSums(is.na(white_model))
white_duplicates <- sum(duplicated(white_model))

kable(
  tibble(variable = names(white_missing), missing = as.integer(white_missing)),
  caption = "Missing Value White Wine"
)
Missing Value White Wine
variable missing
fixed.acidity 0
volatile.acidity 0
citric.acid 0
residual.sugar 0
chlorides 0
free.sulfur.dioxide 0
total.sulfur.dioxide 0
density 0
pH 0
sulphates 0
alcohol 0
quality 0
cat("Duplikasi:", white_duplicates)
## Duplikasi: 937

5.3 Eksplorasi Data

p1 <- ggplot(white_model, aes(quality)) +
  geom_histogram(binwidth = 1, boundary = .5, color = "white") +
  labs(title = "Distribusi Quality — White Wine", x = "Quality", y = "Frekuensi") +
  theme_minimal(base_size = 12)

white_long <- white_model %>%
  pivot_longer(all_of(predictors), names_to = "variable", values_to = "value")

p2 <- ggplot(white_long, aes(value)) +
  geom_histogram(bins = 30, color = "white") +
  facet_wrap(~variable, scales = "free", ncol = 3) +
  labs(title = "Distribusi Prediktor — White Wine", x = NULL, y = "Frekuensi") +
  theme_minimal(base_size = 10)

p1 / p2

5.4 Pembagian Training dan Test

set.seed(12345)
white_split <- initial_split(white_model, prop = .80, strata = quality)
white_train <- training(white_split)
white_test <- testing(white_split)

cat("Training:", nrow(white_train), "\n")
## Training: 3918
cat("Testing :", nrow(white_test), "\n")
## Testing : 980

5.5 Korelasi dan Multikolinearitas

white_train_tmp <- white_train
white_ols_tmp <- lm(quality ~ ., data = white_train_tmp)
white_vif <- car::vif(white_ols_tmp)

white_vif_table <- tibble(
  variable = names(white_vif),
  VIF = as.numeric(white_vif)
) %>% arrange(desc(VIF))

kable(white_vif_table, digits = 3, caption = "VIF White Wine")
VIF White Wine
variable VIF
density 26.544
residual.sugar 12.255
alcohol 7.128
fixed.acidity 2.624
total.sulfur.dioxide 2.191
pH 2.169
free.sulfur.dioxide 1.747
chlorides 1.249
citric.acid 1.151
volatile.acidity 1.139
sulphates 1.126

Hasil VIF menunjukkan bahwa density memiliki VIF paling tinggi, yaitu 26,544, diikuti oleh residual.sugar sebesar 12,255 dan alcohol sebesar 7,128. Nilai tersebut menunjukkan adanya multikolinearitas yang cukup kuat pada ketiga variabel tersebut, terutama density dan residual.sugar. Sementara itu, fixed.acidity, total.sulfur.dioxide, dan pH memiliki VIF sekitar 2–3, sedangkan variabel lainnya memiliki VIF mendekati 1 sehingga keterkaitannya dengan prediktor lain relatif rendah. Kondisi ini menunjukkan bahwa masalah multikolinearitas pada White Wine lebih menonjol dibandingkan Red Wine, terutama pada density, residual.sugar, dan alcohol, sehingga penggunaan Ridge Regression relevan untuk membantu menstabilkan estimasi koefisien.

white_cor <- cor(white_model[predictors], use = "complete.obs")
white_cor_long <- as.data.frame(white_cor) %>%
  rownames_to_column("v1") %>%
  pivot_longer(-v1, names_to = "v2", values_to = "r")

ggplot(white_cor_long, aes(v1, v2, fill = r)) +
  geom_tile() +
  geom_text(aes(label = sprintf("%.2f", r)), size = 2.5) +
  scale_fill_gradient2(low = "#2166AC", mid = "white", high = "#B2182B", midpoint = 0, limits = c(-1,1)) +
  labs(title = "Korelasi Prediktor — White Wine", x = NULL, y = NULL, fill = "r") +
  theme_minimal(base_size = 9) +
  theme(axis.text.x = element_text(angle = 45, hjust = 1))

Matriks korelasi menunjukkan beberapa hubungan yang cukup kuat antar prediktor. Hubungan positif paling kuat terlihat antara residual.sugar dengan density (r = 0,84), sedangkan hubungan negatif paling kuat terlihat antara alcohol dengan density (r = −0,78). Selain itu, terdapat korelasi positif antara free.sulfur.dioxide dengan total.sulfur.dioxide (r = 0,62) dan antara density dengan total.sulfur.dioxide (r = 0,53). Pola ini membantu menjelaskan hasil VIF, terutama tingginya VIF pada density, residual.sugar, dan alcohol, karena ketiga variabel tersebut memiliki hubungan yang cukup kuat dengan prediktor lain. Jadi, pada White Wine, struktur korelasi antarvariabel terlihat lebih kuat pada beberapa pasangan dibandingkan Red Wine dan menjadi salah satu alasan penting penggunaan Ridge Regression.

5.6 Komputasi Manual Ridge

5.6.1 Standardisasi Manual

X_white <- as.matrix(white_train[predictors])
y_white <- white_train$quality

white_means <- colMeans(X_white)
white_sds <- apply(X_white, 2, sd)
Z_white <- scale(X_white, center = white_means, scale = white_sds)

white_standardization <- tibble(
  variable = predictors,
  mean_training = as.numeric(white_means),
  sd_training = as.numeric(white_sds)
)

kable(white_standardization, digits = 4, caption = "Parameter Standardisasi Manual — White Wine")
Parameter Standardisasi Manual — White Wine
variable mean_training sd_training
fixed.acidity 6.8462 0.8485
volatile.acidity 0.2776 0.1003
citric.acid 0.3349 0.1210
residual.sugar 6.4213 5.1262
chlorides 0.0457 0.0216
free.sulfur.dioxide 35.2633 16.5755
total.sulfur.dioxide 138.5966 42.0873
density 0.9940 0.0030
pH 3.1885 0.1510
sulphates 0.4902 0.1145
alcohol 10.5071 1.2323

5.6.2 Cross-Validation Manual

white_lambda_grid <- 10^seq(-4, 2, length.out = 100)

set.seed(12345)
white_manual_folds <- vfold_cv(white_train, v = 10, strata = quality)

white_manual_cv <- map_dfr(white_lambda_grid, function(lambda) {
  fold_rmse <- map_dbl(white_manual_folds$splits, function(s) {
    tr <- analysis(s)
    va <- assessment(s)
    fit <- manual_ridge(tr, predictors, response, lambda)
    pred <- predict_manual_ridge(fit, va)
    rmse_vec(va$quality, pred)
  })

  tibble(penalty = lambda, RMSE = mean(fold_rmse))
})

white_manual_best <- white_manual_cv %>% slice_min(RMSE, n = 1)
white_manual_best

5.6.3 Visualisasi CV Manual

ggplot(white_manual_cv, aes(penalty, RMSE)) +
  geom_line(linewidth = .8) +
  geom_point(data = white_manual_best, size = 3) +
  scale_x_log10() +
  labs(title = "10-Fold CV Manual Ridge — White Wine", x = expression(lambda), y = "Mean RMSE") +
  theme_minimal(base_size = 12)

Hasil 10-fold cross-validation pada White Wine menunjukkan bahwa RMSE berada di sekitar 0,75 pada nilai \(\lambda\) yang kecil, kemudian meningkat ketika \(\lambda\) semakin besar. Nilai RMSE minimum diperoleh pada \(\lambda\) sekitar 0,01, dengan nilai evaluasi RMSE = 0,7624. Hal ini menunjukkan bahwa penalti Ridge yang relatif kecil memberikan kesalahan prediksi yang lebih rendah, sedangkan peningkatan \(\lambda\) yang terlalu besar menyebabkan RMSE meningkat cukup tajam.

5.6.4 Final Manual Ridge

white_lambda_manual <- white_manual_best$penalty
white_manual_fit <- manual_ridge(white_train, predictors, response, white_lambda_manual)

white_manual_coef <- tibble(
  term = predictors,
  estimate = unname(white_manual_fit$beta)
)

kable(white_manual_coef, digits = 5, caption = "Koefisien Manual Ridge — White Wine")
Koefisien Manual Ridge — White Wine
term estimate
fixed.acidity 0.02517
volatile.acidity -0.18912
citric.acid -0.00388
residual.sugar 0.30481
chlorides -0.01402
free.sulfur.dioxide 0.08441
total.sulfur.dioxide -0.02040
density -0.29457
pH 0.06209
sulphates 0.06681
alcohol 0.30576

5.6.5 Prediksi dan Evaluasi Manual

white_manual_pred <- predict_manual_ridge(white_manual_fit, white_test)
white_manual_metrics <- metric_table(white_test$quality, white_manual_pred)
white_manual_metrics

Pada \(\lambda\) terpilih, model menghasilkan MAE = 0,5851 dan R² = 0,2721, sehingga model menjelaskan sekitar 27,21% variasi kualitas White Wine pada data yang dievaluasi.

5.7 Komputasi Ridge dengan Package R

5.7.1 Preprocessing dengan recipe()

white_recipe <- recipe(quality ~ ., data = white_train) %>%
  step_normalize(all_numeric_predictors())

5.7.2 Spesifikasi Ridge

white_ridge_spec <- linear_reg(
  penalty = tune(),
  mixture = 0
) %>%
  set_engine("glmnet", standardize = FALSE)

5.7.3 Cross-Validation Package

white_folds <- white_manual_folds
white_grid <- tibble(penalty = white_lambda_grid)

white_workflow <- workflow() %>%
  add_recipe(white_recipe) %>%
  add_model(white_ridge_spec)

white_tuned <- tune_grid(
  white_workflow,
  resamples = white_folds,
  grid = white_grid,
  metrics = metric_set(rmse, mae, rsq)
)

white_best <- select_best(white_tuned, metric = "rmse")
white_best

5.7.4 Final Package Ridge

white_final_workflow <- finalize_workflow(white_workflow, white_best)
white_package_fit <- fit(white_final_workflow, data = white_train)

white_package_pred <- predict(white_package_fit, new_data = white_test)$.pred
white_package_metrics <- metric_table(white_test$quality, white_package_pred)
white_package_metrics

5.7.5 Perbandingan Koefisien Manual dan Package

white_package_coef <- tidy(extract_fit_parsnip(white_package_fit)$fit) %>%
  filter(term != "(Intercept)") %>%
  transmute(term, package_estimate = estimate)

white_coef_comparison <- white_manual_coef %>%
  rename(manual_estimate = estimate) %>%
  left_join(white_package_coef, by = "term") %>%
  mutate(abs_difference = abs(manual_estimate - package_estimate))

kable(white_coef_comparison, digits = 6, caption = "Perbandingan Koefisien Manual dan Package — White Wine")
Perbandingan Koefisien Manual dan Package — White Wine
term manual_estimate package_estimate abs_difference
fixed.acidity 0.025170 0.000000 0.025170
fixed.acidity 0.025170 -0.000235 0.025406
fixed.acidity 0.025170 -0.000258 0.025428
fixed.acidity 0.025170 -0.000283 0.025453
fixed.acidity 0.025170 -0.000310 0.025481
fixed.acidity 0.025170 -0.000340 0.025510
fixed.acidity 0.025170 -0.000373 0.025543
fixed.acidity 0.025170 -0.000409 0.025579
fixed.acidity 0.025170 -0.000448 0.025618
fixed.acidity 0.025170 -0.000491 0.025661
fixed.acidity 0.025170 -0.000538 0.025708
fixed.acidity 0.025170 -0.000589 0.025760
fixed.acidity 0.025170 -0.000646 0.025816
fixed.acidity 0.025170 -0.000707 0.025878
fixed.acidity 0.025170 -0.000775 0.025945
fixed.acidity 0.025170 -0.000848 0.026019
fixed.acidity 0.025170 -0.000928 0.026099
fixed.acidity 0.025170 -0.001016 0.026186
fixed.acidity 0.025170 -0.001112 0.026282
fixed.acidity 0.025170 -0.001216 0.026386
fixed.acidity 0.025170 -0.001329 0.026500
fixed.acidity 0.025170 -0.001453 0.026623
fixed.acidity 0.025170 -0.001588 0.026758
fixed.acidity 0.025170 -0.001734 0.026904
fixed.acidity 0.025170 -0.001893 0.027063
fixed.acidity 0.025170 -0.002065 0.027236
fixed.acidity 0.025170 -0.002252 0.027423
fixed.acidity 0.025170 -0.002455 0.027626
fixed.acidity 0.025170 -0.002674 0.027845
fixed.acidity 0.025170 -0.002911 0.028082
fixed.acidity 0.025170 -0.003167 0.028337
fixed.acidity 0.025170 -0.003442 0.028613
fixed.acidity 0.025170 -0.003738 0.028909
fixed.acidity 0.025170 -0.004056 0.029227
fixed.acidity 0.025170 -0.004397 0.029568
fixed.acidity 0.025170 -0.004762 0.029932
fixed.acidity 0.025170 -0.005151 0.030322
fixed.acidity 0.025170 -0.005566 0.030736
fixed.acidity 0.025170 -0.006006 0.031177
fixed.acidity 0.025170 -0.006473 0.031644
fixed.acidity 0.025170 -0.006967 0.032137
fixed.acidity 0.025170 -0.007487 0.032657
fixed.acidity 0.025170 -0.008034 0.033204
fixed.acidity 0.025170 -0.008606 0.033777
fixed.acidity 0.025170 -0.009204 0.034375
fixed.acidity 0.025170 -0.009826 0.034997
fixed.acidity 0.025170 -0.010471 0.035642
fixed.acidity 0.025170 -0.011137 0.036308
fixed.acidity 0.025170 -0.011823 0.036993
fixed.acidity 0.025170 -0.012524 0.037695
fixed.acidity 0.025170 -0.013240 0.038410
fixed.acidity 0.025170 -0.013966 0.039137
fixed.acidity 0.025170 -0.014701 0.039871
fixed.acidity 0.025170 -0.015438 0.040609
fixed.acidity 0.025170 -0.016176 0.041347
fixed.acidity 0.025170 -0.016910 0.042080
fixed.acidity 0.025170 -0.017635 0.042805
fixed.acidity 0.025170 -0.018347 0.043517
fixed.acidity 0.025170 -0.019043 0.044213
fixed.acidity 0.025170 -0.019715 0.044886
fixed.acidity 0.025170 -0.020361 0.045531
fixed.acidity 0.025170 -0.020974 0.046144
fixed.acidity 0.025170 -0.021550 0.046721
fixed.acidity 0.025170 -0.022085 0.047255
fixed.acidity 0.025170 -0.022572 0.047743
fixed.acidity 0.025170 -0.023009 0.048179
fixed.acidity 0.025170 -0.023390 0.048560
fixed.acidity 0.025170 -0.023722 0.048893
fixed.acidity 0.025170 -0.023984 0.049154
fixed.acidity 0.025170 -0.024178 0.049349
fixed.acidity 0.025170 -0.024304 0.049474
fixed.acidity 0.025170 -0.024357 0.049527
fixed.acidity 0.025170 -0.024336 0.049507
fixed.acidity 0.025170 -0.024260 0.049431
fixed.acidity 0.025170 -0.024093 0.049263
fixed.acidity 0.025170 -0.023849 0.049019
fixed.acidity 0.025170 -0.023528 0.048699
fixed.acidity 0.025170 -0.023132 0.048303
fixed.acidity 0.025170 -0.022662 0.047833
fixed.acidity 0.025170 -0.022119 0.047289
fixed.acidity 0.025170 -0.021504 0.046675
fixed.acidity 0.025170 -0.020821 0.045991
fixed.acidity 0.025170 -0.020023 0.045193
fixed.acidity 0.025170 -0.019208 0.044378
fixed.acidity 0.025170 -0.018334 0.043504
fixed.acidity 0.025170 -0.017401 0.042572
fixed.acidity 0.025170 -0.016412 0.041582
fixed.acidity 0.025170 -0.015367 0.040538
fixed.acidity 0.025170 -0.014270 0.039440
fixed.acidity 0.025170 -0.013121 0.038291
fixed.acidity 0.025170 -0.011921 0.037092
fixed.acidity 0.025170 -0.010673 0.035843
fixed.acidity 0.025170 -0.009344 0.034515
fixed.acidity 0.025170 -0.007984 0.033154
fixed.acidity 0.025170 -0.006537 0.031707
fixed.acidity 0.025170 -0.005067 0.030238
fixed.acidity 0.025170 -0.003508 0.028678
fixed.acidity 0.025170 -0.001889 0.027059
fixed.acidity 0.025170 -0.000267 0.025437
fixed.acidity 0.025170 0.001438 0.023732
volatile.acidity -0.189117 0.000000 0.189117
volatile.acidity -0.189117 -0.000437 0.188680
volatile.acidity -0.189117 -0.000480 0.188638
volatile.acidity -0.189117 -0.000526 0.188591
volatile.acidity -0.189117 -0.000577 0.188540
volatile.acidity -0.189117 -0.000633 0.188484
volatile.acidity -0.189117 -0.000695 0.188423
volatile.acidity -0.189117 -0.000762 0.188355
volatile.acidity -0.189117 -0.000836 0.188281
volatile.acidity -0.189117 -0.000917 0.188200
volatile.acidity -0.189117 -0.001006 0.188111
volatile.acidity -0.189117 -0.001103 0.188014
volatile.acidity -0.189117 -0.001210 0.187907
volatile.acidity -0.189117 -0.001327 0.187790
volatile.acidity -0.189117 -0.001455 0.187662
volatile.acidity -0.189117 -0.001596 0.187521
volatile.acidity -0.189117 -0.001750 0.187368
volatile.acidity -0.189117 -0.001918 0.187199
volatile.acidity -0.189117 -0.002103 0.187014
volatile.acidity -0.189117 -0.002305 0.186812
volatile.acidity -0.189117 -0.002526 0.186591
volatile.acidity -0.189117 -0.002768 0.186349
volatile.acidity -0.189117 -0.003033 0.186084
volatile.acidity -0.189117 -0.003323 0.185795
volatile.acidity -0.189117 -0.003639 0.185478
volatile.acidity -0.189117 -0.003985 0.185132
volatile.acidity -0.189117 -0.004363 0.184754
volatile.acidity -0.189117 -0.004776 0.184341
volatile.acidity -0.189117 -0.005227 0.183891
volatile.acidity -0.189117 -0.005718 0.183399
volatile.acidity -0.189117 -0.006254 0.182863
volatile.acidity -0.189117 -0.006838 0.182279
volatile.acidity -0.189117 -0.007474 0.181644
volatile.acidity -0.189117 -0.008166 0.180952
volatile.acidity -0.189117 -0.008918 0.180199
volatile.acidity -0.189117 -0.009735 0.179382
volatile.acidity -0.189117 -0.010622 0.178495
volatile.acidity -0.189117 -0.011584 0.177533
volatile.acidity -0.189117 -0.012626 0.176492
volatile.acidity -0.189117 -0.013753 0.175364
volatile.acidity -0.189117 -0.014971 0.174146
volatile.acidity -0.189117 -0.016286 0.172832
volatile.acidity -0.189117 -0.017702 0.171415
volatile.acidity -0.189117 -0.019226 0.169891
volatile.acidity -0.189117 -0.020864 0.168254
volatile.acidity -0.189117 -0.022619 0.166498
volatile.acidity -0.189117 -0.024499 0.164619
volatile.acidity -0.189117 -0.026506 0.162611
volatile.acidity -0.189117 -0.028647 0.160471
volatile.acidity -0.189117 -0.030923 0.158194
volatile.acidity -0.189117 -0.033339 0.155778
volatile.acidity -0.189117 -0.035897 0.153221
volatile.acidity -0.189117 -0.038597 0.150520
volatile.acidity -0.189117 -0.041441 0.147676
volatile.acidity -0.189117 -0.044428 0.144690
volatile.acidity -0.189117 -0.047555 0.141562
volatile.acidity -0.189117 -0.050820 0.138298
volatile.acidity -0.189117 -0.054218 0.134900
volatile.acidity -0.189117 -0.057742 0.131376
volatile.acidity -0.189117 -0.061387 0.127731
volatile.acidity -0.189117 -0.065144 0.123974
volatile.acidity -0.189117 -0.069003 0.120114
volatile.acidity -0.189117 -0.072954 0.116163
volatile.acidity -0.189117 -0.076985 0.112133
volatile.acidity -0.189117 -0.081083 0.108034
volatile.acidity -0.189117 -0.085235 0.103882
volatile.acidity -0.189117 -0.089428 0.099690
volatile.acidity -0.189117 -0.093642 0.095475
volatile.acidity -0.189117 -0.097872 0.091245
volatile.acidity -0.189117 -0.102099 0.087018
volatile.acidity -0.189117 -0.106309 0.082809
volatile.acidity -0.189117 -0.110487 0.078631
volatile.acidity -0.189117 -0.114620 0.074498
volatile.acidity -0.189117 -0.118690 0.070427
volatile.acidity -0.189117 -0.122695 0.066423
volatile.acidity -0.189117 -0.126616 0.062501
volatile.acidity -0.189117 -0.130445 0.058672
volatile.acidity -0.189117 -0.134171 0.054947
volatile.acidity -0.189117 -0.137784 0.051333
volatile.acidity -0.189117 -0.141278 0.047839
volatile.acidity -0.189117 -0.144645 0.044472
volatile.acidity -0.189117 -0.147880 0.041237
volatile.acidity -0.189117 -0.150962 0.038156
volatile.acidity -0.189117 -0.153918 0.035199
volatile.acidity -0.189117 -0.156732 0.032385
volatile.acidity -0.189117 -0.159402 0.029715
volatile.acidity -0.189117 -0.161929 0.027188
volatile.acidity -0.189117 -0.164314 0.024804
volatile.acidity -0.189117 -0.166557 0.022561
volatile.acidity -0.189117 -0.168661 0.020456
volatile.acidity -0.189117 -0.170629 0.018488
volatile.acidity -0.189117 -0.172465 0.016652
volatile.acidity -0.189117 -0.174199 0.014919
volatile.acidity -0.189117 -0.175783 0.013335
volatile.acidity -0.189117 -0.177260 0.011857
volatile.acidity -0.189117 -0.178610 0.010508
volatile.acidity -0.189117 -0.179857 0.009261
volatile.acidity -0.189117 -0.180997 0.008120
volatile.acidity -0.189117 -0.182035 0.007083
volatile.acidity -0.189117 -0.182982 0.006136
citric.acid -0.003877 0.000000 0.003877
citric.acid -0.003877 -0.000035 0.003842
citric.acid -0.003877 -0.000038 0.003838
citric.acid -0.003877 -0.000042 0.003835
citric.acid -0.003877 -0.000046 0.003831
citric.acid -0.003877 -0.000050 0.003827
citric.acid -0.003877 -0.000055 0.003822
citric.acid -0.003877 -0.000060 0.003817
citric.acid -0.003877 -0.000065 0.003811
citric.acid -0.003877 -0.000071 0.003805
citric.acid -0.003877 -0.000078 0.003799
citric.acid -0.003877 -0.000085 0.003792
citric.acid -0.003877 -0.000093 0.003784
citric.acid -0.003877 -0.000101 0.003776
citric.acid -0.003877 -0.000110 0.003767
citric.acid -0.003877 -0.000119 0.003757
citric.acid -0.003877 -0.000130 0.003747
citric.acid -0.003877 -0.000141 0.003735
citric.acid -0.003877 -0.000153 0.003724
citric.acid -0.003877 -0.000166 0.003711
citric.acid -0.003877 -0.000180 0.003697
citric.acid -0.003877 -0.000194 0.003683
citric.acid -0.003877 -0.000209 0.003667
citric.acid -0.003877 -0.000226 0.003651
citric.acid -0.003877 -0.000242 0.003634
citric.acid -0.003877 -0.000260 0.003616
citric.acid -0.003877 -0.000278 0.003598
citric.acid -0.003877 -0.000297 0.003579
citric.acid -0.003877 -0.000316 0.003560
citric.acid -0.003877 -0.000336 0.003541
citric.acid -0.003877 -0.000355 0.003522
citric.acid -0.003877 -0.000374 0.003503
citric.acid -0.003877 -0.000391 0.003485
citric.acid -0.003877 -0.000408 0.003469
citric.acid -0.003877 -0.000423 0.003454
citric.acid -0.003877 -0.000435 0.003442
citric.acid -0.003877 -0.000443 0.003433
citric.acid -0.003877 -0.000448 0.003429
citric.acid -0.003877 -0.000447 0.003429
citric.acid -0.003877 -0.000441 0.003436
citric.acid -0.003877 -0.000426 0.003450
citric.acid -0.003877 -0.000403 0.003474
citric.acid -0.003877 -0.000370 0.003507
citric.acid -0.003877 -0.000325 0.003552
citric.acid -0.003877 -0.000267 0.003610
citric.acid -0.003877 -0.000194 0.003682
citric.acid -0.003877 -0.000106 0.003771
citric.acid -0.003877 0.000001 0.003877
citric.acid -0.003877 0.000126 0.004002
citric.acid -0.003877 0.000271 0.004147
citric.acid -0.003877 0.000436 0.004313
citric.acid -0.003877 0.000623 0.004499
citric.acid -0.003877 0.000831 0.004707
citric.acid -0.003877 0.001060 0.004936
citric.acid -0.003877 0.001308 0.005185
citric.acid -0.003877 0.001575 0.005452
citric.acid -0.003877 0.001859 0.005736
citric.acid -0.003877 0.002156 0.006033
citric.acid -0.003877 0.002467 0.006343
citric.acid -0.003877 0.002781 0.006658
citric.acid -0.003877 0.003098 0.006975
citric.acid -0.003877 0.003412 0.007289
citric.acid -0.003877 0.003718 0.007595
citric.acid -0.003877 0.004011 0.007888
citric.acid -0.003877 0.004286 0.008163
citric.acid -0.003877 0.004537 0.008413
citric.acid -0.003877 0.004759 0.008635
citric.acid -0.003877 0.004951 0.008828
citric.acid -0.003877 0.005102 0.008979
citric.acid -0.003877 0.005212 0.009088
citric.acid -0.003877 0.005277 0.009153
citric.acid -0.003877 0.005296 0.009173
citric.acid -0.003877 0.005269 0.009146
citric.acid -0.003877 0.005198 0.009075
citric.acid -0.003877 0.005078 0.008954
citric.acid -0.003877 0.004912 0.008789
citric.acid -0.003877 0.004705 0.008582
citric.acid -0.003877 0.004459 0.008336
citric.acid -0.003877 0.004178 0.008054
citric.acid -0.003877 0.003865 0.007742
citric.acid -0.003877 0.003527 0.007403
citric.acid -0.003877 0.003166 0.007043
citric.acid -0.003877 0.002794 0.006670
citric.acid -0.003877 0.002405 0.006281
citric.acid -0.003877 0.002008 0.005885
citric.acid -0.003877 0.001608 0.005485
citric.acid -0.003877 0.001208 0.005085
citric.acid -0.003877 0.000813 0.004690
citric.acid -0.003877 0.000425 0.004302
citric.acid -0.003877 0.000048 0.003925
citric.acid -0.003877 -0.000316 0.003560
citric.acid -0.003877 -0.000666 0.003211
citric.acid -0.003877 -0.001007 0.002869
citric.acid -0.003877 -0.001322 0.002555
citric.acid -0.003877 -0.001621 0.002256
citric.acid -0.003877 -0.001896 0.001981
citric.acid -0.003877 -0.002153 0.001724
citric.acid -0.003877 -0.002388 0.001489
citric.acid -0.003877 -0.002602 0.001274
citric.acid -0.003877 -0.002797 0.001080
residual.sugar 0.304811 0.000000 0.304811
residual.sugar 0.304811 -0.000212 0.305023
residual.sugar 0.304811 -0.000233 0.305043
residual.sugar 0.304811 -0.000255 0.305066
residual.sugar 0.304811 -0.000279 0.305090
residual.sugar 0.304811 -0.000306 0.305116
residual.sugar 0.304811 -0.000335 0.305145
residual.sugar 0.304811 -0.000366 0.305177
residual.sugar 0.304811 -0.000401 0.305211
residual.sugar 0.304811 -0.000439 0.305249
residual.sugar 0.304811 -0.000480 0.305290
residual.sugar 0.304811 -0.000524 0.305335
residual.sugar 0.304811 -0.000573 0.305383
residual.sugar 0.304811 -0.000626 0.305436
residual.sugar 0.304811 -0.000683 0.305494
residual.sugar 0.304811 -0.000745 0.305556
residual.sugar 0.304811 -0.000813 0.305623
residual.sugar 0.304811 -0.000886 0.305696
residual.sugar 0.304811 -0.000965 0.305775
residual.sugar 0.304811 -0.001050 0.305861
residual.sugar 0.304811 -0.001142 0.305952
residual.sugar 0.304811 -0.001241 0.306051
residual.sugar 0.304811 -0.001347 0.306157
residual.sugar 0.304811 -0.001460 0.306270
residual.sugar 0.304811 -0.001581 0.306391
residual.sugar 0.304811 -0.001710 0.306520
residual.sugar 0.304811 -0.001846 0.306657
residual.sugar 0.304811 -0.001991 0.306801
residual.sugar 0.304811 -0.002142 0.306953
residual.sugar 0.304811 -0.002301 0.307112
residual.sugar 0.304811 -0.002467 0.307277
residual.sugar 0.304811 -0.002637 0.307448
residual.sugar 0.304811 -0.002813 0.307623
residual.sugar 0.304811 -0.002991 0.307802
residual.sugar 0.304811 -0.003170 0.307981
residual.sugar 0.304811 -0.003348 0.308159
residual.sugar 0.304811 -0.003522 0.308332
residual.sugar 0.304811 -0.003687 0.308498
residual.sugar 0.304811 -0.003841 0.308652
residual.sugar 0.304811 -0.003978 0.308788
residual.sugar 0.304811 -0.004092 0.308902
residual.sugar 0.304811 -0.004177 0.308988
residual.sugar 0.304811 -0.004226 0.309036
residual.sugar 0.304811 -0.004230 0.309040
residual.sugar 0.304811 -0.004180 0.308990
residual.sugar 0.304811 -0.004066 0.308876
residual.sugar 0.304811 -0.003877 0.308687
residual.sugar 0.304811 -0.003601 0.308411
residual.sugar 0.304811 -0.003225 0.308036
residual.sugar 0.304811 -0.002736 0.307547
residual.sugar 0.304811 -0.002121 0.306931
residual.sugar 0.304811 -0.001363 0.306174
residual.sugar 0.304811 -0.000450 0.305261
residual.sugar 0.304811 0.000633 0.304177
residual.sugar 0.304811 0.001902 0.302909
residual.sugar 0.304811 0.003369 0.301442
residual.sugar 0.304811 0.005048 0.299762
residual.sugar 0.304811 0.006952 0.297859
residual.sugar 0.304811 0.009085 0.295726
residual.sugar 0.304811 0.011465 0.293346
residual.sugar 0.304811 0.014096 0.290715
residual.sugar 0.304811 0.016984 0.287826
residual.sugar 0.304811 0.020133 0.284677
residual.sugar 0.304811 0.023544 0.281267
residual.sugar 0.304811 0.027215 0.277595
residual.sugar 0.304811 0.031144 0.273666
residual.sugar 0.304811 0.035325 0.269486
residual.sugar 0.304811 0.039717 0.265094
residual.sugar 0.304811 0.044362 0.260449
residual.sugar 0.304811 0.049225 0.255586
residual.sugar 0.304811 0.054292 0.250518
residual.sugar 0.304811 0.059548 0.245263
residual.sugar 0.304811 0.064974 0.239837
residual.sugar 0.304811 0.070495 0.234316
residual.sugar 0.304811 0.076193 0.228618
residual.sugar 0.304811 0.082005 0.222806
residual.sugar 0.304811 0.087911 0.216899
residual.sugar 0.304811 0.093894 0.210916
residual.sugar 0.304811 0.099937 0.204874
residual.sugar 0.304811 0.106021 0.198789
residual.sugar 0.304811 0.112134 0.192677
residual.sugar 0.304811 0.118260 0.186551
residual.sugar 0.304811 0.124507 0.180304
residual.sugar 0.304811 0.130629 0.174181
residual.sugar 0.304811 0.136725 0.168085
residual.sugar 0.304811 0.142797 0.162014
residual.sugar 0.304811 0.148840 0.155971
residual.sugar 0.304811 0.154852 0.149958
residual.sugar 0.304811 0.160835 0.143976
residual.sugar 0.304811 0.166788 0.138023
residual.sugar 0.304811 0.172714 0.132097
residual.sugar 0.304811 0.178615 0.126196
residual.sugar 0.304811 0.184616 0.120194
residual.sugar 0.304811 0.190532 0.114278
residual.sugar 0.304811 0.196576 0.108235
residual.sugar 0.304811 0.202527 0.102283
residual.sugar 0.304811 0.208624 0.096187
residual.sugar 0.304811 0.214771 0.090040
residual.sugar 0.304811 0.220802 0.084008
residual.sugar 0.304811 0.226975 0.077835
chlorides -0.014023 0.000000 0.014023
chlorides -0.014023 -0.000472 0.013551
chlorides -0.014023 -0.000518 0.013505
chlorides -0.014023 -0.000568 0.013455
chlorides -0.014023 -0.000623 0.013400
chlorides -0.014023 -0.000683 0.013340
chlorides -0.014023 -0.000749 0.013274
chlorides -0.014023 -0.000821 0.013202
chlorides -0.014023 -0.000900 0.013123
chlorides -0.014023 -0.000987 0.013036
chlorides -0.014023 -0.001082 0.012941
chlorides -0.014023 -0.001186 0.012837
chlorides -0.014023 -0.001299 0.012724
chlorides -0.014023 -0.001424 0.012599
chlorides -0.014023 -0.001560 0.012463
chlorides -0.014023 -0.001709 0.012314
chlorides -0.014023 -0.001871 0.012152
chlorides -0.014023 -0.002049 0.011974
chlorides -0.014023 -0.002243 0.011780
chlorides -0.014023 -0.002455 0.011568
chlorides -0.014023 -0.002686 0.011337
chlorides -0.014023 -0.002938 0.011085
chlorides -0.014023 -0.003212 0.010811
chlorides -0.014023 -0.003511 0.010512
chlorides -0.014023 -0.003837 0.010186
chlorides -0.014023 -0.004191 0.009832
chlorides -0.014023 -0.004576 0.009448
chlorides -0.014023 -0.004993 0.009030
chlorides -0.014023 -0.005446 0.008577
chlorides -0.014023 -0.005937 0.008086
chlorides -0.014023 -0.006468 0.007555
chlorides -0.014023 -0.007042 0.006981
chlorides -0.014023 -0.007662 0.006362
chlorides -0.014023 -0.008329 0.005694
chlorides -0.014023 -0.009048 0.004975
chlorides -0.014023 -0.009820 0.004203
chlorides -0.014023 -0.010648 0.003375
chlorides -0.014023 -0.011534 0.002489
chlorides -0.014023 -0.012481 0.001542
chlorides -0.014023 -0.013490 0.000533
chlorides -0.014023 -0.014563 0.000540
chlorides -0.014023 -0.015701 0.001678
chlorides -0.014023 -0.016904 0.002881
chlorides -0.014023 -0.018174 0.004151
chlorides -0.014023 -0.019508 0.005485
chlorides -0.014023 -0.020907 0.006884
chlorides -0.014023 -0.022368 0.008345
chlorides -0.014023 -0.023888 0.009865
chlorides -0.014023 -0.025463 0.011440
chlorides -0.014023 -0.027089 0.013066
chlorides -0.014023 -0.028759 0.014736
chlorides -0.014023 -0.030466 0.016443
chlorides -0.014023 -0.032203 0.018179
chlorides -0.014023 -0.033959 0.019936
chlorides -0.014023 -0.035724 0.021701
chlorides -0.014023 -0.037487 0.023464
chlorides -0.014023 -0.039235 0.025212
chlorides -0.014023 -0.040954 0.026931
chlorides -0.014023 -0.042633 0.028610
chlorides -0.014023 -0.044253 0.030230
chlorides -0.014023 -0.045802 0.031779
chlorides -0.014023 -0.047263 0.033240
chlorides -0.014023 -0.048623 0.034600
chlorides -0.014023 -0.049866 0.035843
chlorides -0.014023 -0.050980 0.036957
chlorides -0.014023 -0.051953 0.037930
chlorides -0.014023 -0.052774 0.038751
chlorides -0.014023 -0.053444 0.039421
chlorides -0.014023 -0.053939 0.039916
chlorides -0.014023 -0.054264 0.040241
chlorides -0.014023 -0.054415 0.040392
chlorides -0.014023 -0.054393 0.040370
chlorides -0.014023 -0.054201 0.040178
chlorides -0.014023 -0.053857 0.039834
chlorides -0.014023 -0.053345 0.039322
chlorides -0.014023 -0.052686 0.038663
chlorides -0.014023 -0.051889 0.037866
chlorides -0.014023 -0.050968 0.036945
chlorides -0.014023 -0.049937 0.035914
chlorides -0.014023 -0.048809 0.034786
chlorides -0.014023 -0.047600 0.033577
chlorides -0.014023 -0.046323 0.032300
chlorides -0.014023 -0.044981 0.030958
chlorides -0.014023 -0.043615 0.029592
chlorides -0.014023 -0.042225 0.028202
chlorides -0.014023 -0.040822 0.026799
chlorides -0.014023 -0.039416 0.025393
chlorides -0.014023 -0.038017 0.023994
chlorides -0.014023 -0.036634 0.022611
chlorides -0.014023 -0.035273 0.021250
chlorides -0.014023 -0.033941 0.019918
chlorides -0.014023 -0.032643 0.018620
chlorides -0.014023 -0.031359 0.017336
chlorides -0.014023 -0.030132 0.016109
chlorides -0.014023 -0.028928 0.014905
chlorides -0.014023 -0.027782 0.013759
chlorides -0.014023 -0.026662 0.012639
chlorides -0.014023 -0.025582 0.011559
chlorides -0.014023 -0.024560 0.010537
chlorides -0.014023 -0.023567 0.009543
free.sulfur.dioxide 0.084415 0.000000 0.084415
free.sulfur.dioxide 0.084415 0.000047 0.084367
free.sulfur.dioxide 0.084415 0.000052 0.084362
free.sulfur.dioxide 0.084415 0.000058 0.084357
free.sulfur.dioxide 0.084415 0.000063 0.084351
free.sulfur.dioxide 0.084415 0.000070 0.084345
free.sulfur.dioxide 0.084415 0.000077 0.084338
free.sulfur.dioxide 0.084415 0.000085 0.084330
free.sulfur.dioxide 0.084415 0.000094 0.084321
free.sulfur.dioxide 0.084415 0.000104 0.084311
free.sulfur.dioxide 0.084415 0.000115 0.084300
free.sulfur.dioxide 0.084415 0.000127 0.084288
free.sulfur.dioxide 0.084415 0.000140 0.084274
free.sulfur.dioxide 0.084415 0.000156 0.084259
free.sulfur.dioxide 0.084415 0.000172 0.084242
free.sulfur.dioxide 0.084415 0.000191 0.084224
free.sulfur.dioxide 0.084415 0.000212 0.084203
free.sulfur.dioxide 0.084415 0.000236 0.084179
free.sulfur.dioxide 0.084415 0.000262 0.084153
free.sulfur.dioxide 0.084415 0.000292 0.084123
free.sulfur.dioxide 0.084415 0.000325 0.084090
free.sulfur.dioxide 0.084415 0.000362 0.084052
free.sulfur.dioxide 0.084415 0.000404 0.084010
free.sulfur.dioxide 0.084415 0.000452 0.083963
free.sulfur.dioxide 0.084415 0.000505 0.083909
free.sulfur.dioxide 0.084415 0.000566 0.083849
free.sulfur.dioxide 0.084415 0.000635 0.083780
free.sulfur.dioxide 0.084415 0.000712 0.083703
free.sulfur.dioxide 0.084415 0.000800 0.083615
free.sulfur.dioxide 0.084415 0.000900 0.083515
free.sulfur.dioxide 0.084415 0.001013 0.083402
free.sulfur.dioxide 0.084415 0.001142 0.083273
free.sulfur.dioxide 0.084415 0.001288 0.083127
free.sulfur.dioxide 0.084415 0.001454 0.082961
free.sulfur.dioxide 0.084415 0.001642 0.082773
free.sulfur.dioxide 0.084415 0.001856 0.082559
free.sulfur.dioxide 0.084415 0.002099 0.082316
free.sulfur.dioxide 0.084415 0.002374 0.082041
free.sulfur.dioxide 0.084415 0.002686 0.081729
free.sulfur.dioxide 0.084415 0.003039 0.081376
free.sulfur.dioxide 0.084415 0.003438 0.080977
free.sulfur.dioxide 0.084415 0.003888 0.080527
free.sulfur.dioxide 0.084415 0.004394 0.080020
free.sulfur.dioxide 0.084415 0.004963 0.079451
free.sulfur.dioxide 0.084415 0.005601 0.078814
free.sulfur.dioxide 0.084415 0.006313 0.078102
free.sulfur.dioxide 0.084415 0.007106 0.077309
free.sulfur.dioxide 0.084415 0.007986 0.076428
free.sulfur.dioxide 0.084415 0.008960 0.075454
free.sulfur.dioxide 0.084415 0.010034 0.074381
free.sulfur.dioxide 0.084415 0.011211 0.073203
free.sulfur.dioxide 0.084415 0.012499 0.071916
free.sulfur.dioxide 0.084415 0.013899 0.070516
free.sulfur.dioxide 0.084415 0.015415 0.068999
free.sulfur.dioxide 0.084415 0.017049 0.067365
free.sulfur.dioxide 0.084415 0.018802 0.065613
free.sulfur.dioxide 0.084415 0.020671 0.063744
free.sulfur.dioxide 0.084415 0.022655 0.061760
free.sulfur.dioxide 0.084415 0.024749 0.059666
free.sulfur.dioxide 0.084415 0.026945 0.057469
free.sulfur.dioxide 0.084415 0.029238 0.055177
free.sulfur.dioxide 0.084415 0.031617 0.052798
free.sulfur.dioxide 0.084415 0.034071 0.050344
free.sulfur.dioxide 0.084415 0.036589 0.047826
free.sulfur.dioxide 0.084415 0.039156 0.045258
free.sulfur.dioxide 0.084415 0.041759 0.042655
free.sulfur.dioxide 0.084415 0.044383 0.040031
free.sulfur.dioxide 0.084415 0.047013 0.037402
free.sulfur.dioxide 0.084415 0.049630 0.034784
free.sulfur.dioxide 0.084415 0.052222 0.032193
free.sulfur.dioxide 0.084415 0.054773 0.029642
free.sulfur.dioxide 0.084415 0.057269 0.027146
free.sulfur.dioxide 0.084415 0.059698 0.024717
free.sulfur.dioxide 0.084415 0.062049 0.022366
free.sulfur.dioxide 0.084415 0.064306 0.020108
free.sulfur.dioxide 0.084415 0.066465 0.017950
free.sulfur.dioxide 0.084415 0.068517 0.015898
free.sulfur.dioxide 0.084415 0.070457 0.013958
free.sulfur.dioxide 0.084415 0.072280 0.012135
free.sulfur.dioxide 0.084415 0.073984 0.010431
free.sulfur.dioxide 0.084415 0.075567 0.008848
free.sulfur.dioxide 0.084415 0.077029 0.007386
free.sulfur.dioxide 0.084415 0.078401 0.006014
free.sulfur.dioxide 0.084415 0.079628 0.004787
free.sulfur.dioxide 0.084415 0.080743 0.003672
free.sulfur.dioxide 0.084415 0.081747 0.002667
free.sulfur.dioxide 0.084415 0.082646 0.001768
free.sulfur.dioxide 0.084415 0.083445 0.000970
free.sulfur.dioxide 0.084415 0.084147 0.000267
free.sulfur.dioxide 0.084415 0.084760 0.000345
free.sulfur.dioxide 0.084415 0.085289 0.000874
free.sulfur.dioxide 0.084415 0.085739 0.001324
free.sulfur.dioxide 0.084415 0.086065 0.001651
free.sulfur.dioxide 0.084415 0.086371 0.001956
free.sulfur.dioxide 0.084415 0.086582 0.002168
free.sulfur.dioxide 0.084415 0.086764 0.002349
free.sulfur.dioxide 0.084415 0.086871 0.002456
free.sulfur.dioxide 0.084415 0.086929 0.002514
free.sulfur.dioxide 0.084415 0.086959 0.002544
free.sulfur.dioxide 0.084415 0.086934 0.002520
total.sulfur.dioxide -0.020402 0.000000 0.020402
total.sulfur.dioxide -0.020402 -0.000388 0.020014
total.sulfur.dioxide -0.020402 -0.000425 0.019977
total.sulfur.dioxide -0.020402 -0.000466 0.019936
total.sulfur.dioxide -0.020402 -0.000511 0.019891
total.sulfur.dioxide -0.020402 -0.000561 0.019842
total.sulfur.dioxide -0.020402 -0.000614 0.019788
total.sulfur.dioxide -0.020402 -0.000673 0.019729
total.sulfur.dioxide -0.020402 -0.000738 0.019664
total.sulfur.dioxide -0.020402 -0.000808 0.019594
total.sulfur.dioxide -0.020402 -0.000886 0.019516
total.sulfur.dioxide -0.020402 -0.000970 0.019432
total.sulfur.dioxide -0.020402 -0.001062 0.019340
total.sulfur.dioxide -0.020402 -0.001163 0.019239
total.sulfur.dioxide -0.020402 -0.001273 0.019129
total.sulfur.dioxide -0.020402 -0.001393 0.019009
total.sulfur.dioxide -0.020402 -0.001524 0.018878
total.sulfur.dioxide -0.020402 -0.001667 0.018735
total.sulfur.dioxide -0.020402 -0.001822 0.018580
total.sulfur.dioxide -0.020402 -0.001992 0.018410
total.sulfur.dioxide -0.020402 -0.002176 0.018226
total.sulfur.dioxide -0.020402 -0.002376 0.018026
total.sulfur.dioxide -0.020402 -0.002594 0.017808
total.sulfur.dioxide -0.020402 -0.002830 0.017572
total.sulfur.dioxide -0.020402 -0.003086 0.017316
total.sulfur.dioxide -0.020402 -0.003363 0.017039
total.sulfur.dioxide -0.020402 -0.003662 0.016740
total.sulfur.dioxide -0.020402 -0.003986 0.016416
total.sulfur.dioxide -0.020402 -0.004335 0.016067
total.sulfur.dioxide -0.020402 -0.004710 0.015692
total.sulfur.dioxide -0.020402 -0.005114 0.015288
total.sulfur.dioxide -0.020402 -0.005547 0.014855
total.sulfur.dioxide -0.020402 -0.006011 0.014391
total.sulfur.dioxide -0.020402 -0.006507 0.013895
total.sulfur.dioxide -0.020402 -0.007035 0.013367
total.sulfur.dioxide -0.020402 -0.007597 0.012805
total.sulfur.dioxide -0.020402 -0.008193 0.012209
total.sulfur.dioxide -0.020402 -0.008823 0.011579
total.sulfur.dioxide -0.020402 -0.009488 0.010914
total.sulfur.dioxide -0.020402 -0.010188 0.010215
total.sulfur.dioxide -0.020402 -0.010920 0.009482
total.sulfur.dioxide -0.020402 -0.011686 0.008716
total.sulfur.dioxide -0.020402 -0.012482 0.007920
total.sulfur.dioxide -0.020402 -0.013308 0.007094
total.sulfur.dioxide -0.020402 -0.014160 0.006242
total.sulfur.dioxide -0.020402 -0.015036 0.005366
total.sulfur.dioxide -0.020402 -0.015933 0.004469
total.sulfur.dioxide -0.020402 -0.016848 0.003554
total.sulfur.dioxide -0.020402 -0.017776 0.002626
total.sulfur.dioxide -0.020402 -0.018713 0.001690
total.sulfur.dioxide -0.020402 -0.019654 0.000748
total.sulfur.dioxide -0.020402 -0.020596 0.000194
total.sulfur.dioxide -0.020402 -0.021534 0.001132
total.sulfur.dioxide -0.020402 -0.022463 0.002061
total.sulfur.dioxide -0.020402 -0.023378 0.002976
total.sulfur.dioxide -0.020402 -0.024276 0.003874
total.sulfur.dioxide -0.020402 -0.025153 0.004751
total.sulfur.dioxide -0.020402 -0.026005 0.005602
total.sulfur.dioxide -0.020402 -0.026836 0.006434
total.sulfur.dioxide -0.020402 -0.027631 0.007229
total.sulfur.dioxide -0.020402 -0.028393 0.007991
total.sulfur.dioxide -0.020402 -0.029119 0.008716
total.sulfur.dioxide -0.020402 -0.029807 0.009405
total.sulfur.dioxide -0.020402 -0.030456 0.010054
total.sulfur.dioxide -0.020402 -0.031065 0.010663
total.sulfur.dioxide -0.020402 -0.031632 0.011230
total.sulfur.dioxide -0.020402 -0.032155 0.011753
total.sulfur.dioxide -0.020402 -0.032657 0.012255
total.sulfur.dioxide -0.020402 -0.033095 0.012692
total.sulfur.dioxide -0.020402 -0.033486 0.013084
total.sulfur.dioxide -0.020402 -0.033830 0.013428
total.sulfur.dioxide -0.020402 -0.034126 0.013724
total.sulfur.dioxide -0.020402 -0.034372 0.013970
total.sulfur.dioxide -0.020402 -0.034596 0.014194
total.sulfur.dioxide -0.020402 -0.034745 0.014343
total.sulfur.dioxide -0.020402 -0.034844 0.014442
total.sulfur.dioxide -0.020402 -0.034892 0.014490
total.sulfur.dioxide -0.020402 -0.034891 0.014489
total.sulfur.dioxide -0.020402 -0.034842 0.014440
total.sulfur.dioxide -0.020402 -0.034746 0.014344
total.sulfur.dioxide -0.020402 -0.034605 0.014203
total.sulfur.dioxide -0.020402 -0.034422 0.014020
total.sulfur.dioxide -0.020402 -0.034199 0.013797
total.sulfur.dioxide -0.020402 -0.033943 0.013541
total.sulfur.dioxide -0.020402 -0.033657 0.013254
total.sulfur.dioxide -0.020402 -0.033340 0.012938
total.sulfur.dioxide -0.020402 -0.032995 0.012593
total.sulfur.dioxide -0.020402 -0.032626 0.012224
total.sulfur.dioxide -0.020402 -0.032235 0.011833
total.sulfur.dioxide -0.020402 -0.031826 0.011424
total.sulfur.dioxide -0.020402 -0.031400 0.010998
total.sulfur.dioxide -0.020402 -0.030961 0.010559
total.sulfur.dioxide -0.020402 -0.030445 0.010043
total.sulfur.dioxide -0.020402 -0.029977 0.009575
total.sulfur.dioxide -0.020402 -0.029456 0.009054
total.sulfur.dioxide -0.020402 -0.028968 0.008566
total.sulfur.dioxide -0.020402 -0.028442 0.008040
total.sulfur.dioxide -0.020402 -0.027911 0.007509
total.sulfur.dioxide -0.020402 -0.027405 0.007003
total.sulfur.dioxide -0.020402 -0.026875 0.006473
density -0.294568 0.000000 0.294568
density -0.294568 -0.000675 0.293893
density -0.294568 -0.000740 0.293828
density -0.294568 -0.000811 0.293757
density -0.294568 -0.000890 0.293678
density -0.294568 -0.000976 0.293592
density -0.294568 -0.001070 0.293498
density -0.294568 -0.001173 0.293395
density -0.294568 -0.001285 0.293283
density -0.294568 -0.001409 0.293159
density -0.294568 -0.001544 0.293024
density -0.294568 -0.001691 0.292877
density -0.294568 -0.001853 0.292715
density -0.294568 -0.002029 0.292539
density -0.294568 -0.002222 0.292346
density -0.294568 -0.002433 0.292135
density -0.294568 -0.002664 0.291904
density -0.294568 -0.002915 0.291653
density -0.294568 -0.003189 0.291379
density -0.294568 -0.003488 0.291080
density -0.294568 -0.003814 0.290754
density -0.294568 -0.004169 0.290399
density -0.294568 -0.004555 0.290013
density -0.294568 -0.004975 0.289594
density -0.294568 -0.005431 0.289137
density -0.294568 -0.005926 0.288642
density -0.294568 -0.006462 0.288106
density -0.294568 -0.007044 0.287524
density -0.294568 -0.007673 0.286895
density -0.294568 -0.008352 0.286216
density -0.294568 -0.009086 0.285482
density -0.294568 -0.009876 0.284692
density -0.294568 -0.010726 0.283842
density -0.294568 -0.011639 0.282929
density -0.294568 -0.012618 0.281950
density -0.294568 -0.013666 0.280903
density -0.294568 -0.014784 0.279784
density -0.294568 -0.015976 0.278592
density -0.294568 -0.017244 0.277324
density -0.294568 -0.018588 0.275980
density -0.294568 -0.020010 0.274558
density -0.294568 -0.021511 0.273057
density -0.294568 -0.023090 0.271478
density -0.294568 -0.024747 0.269821
density -0.294568 -0.026480 0.268088
density -0.294568 -0.028287 0.266281
density -0.294568 -0.030166 0.264402
density -0.294568 -0.032114 0.262455
density -0.294568 -0.034125 0.260443
density -0.294568 -0.036195 0.258373
density -0.294568 -0.038319 0.256249
density -0.294568 -0.040491 0.254077
density -0.294568 -0.042705 0.251864
density -0.294568 -0.044953 0.249615
density -0.294568 -0.047230 0.247338
density -0.294568 -0.049529 0.245039
density -0.294568 -0.051842 0.242726
density -0.294568 -0.054165 0.240403
density -0.294568 -0.056490 0.238078
density -0.294568 -0.058811 0.235757
density -0.294568 -0.061125 0.233443
density -0.294568 -0.063427 0.231141
density -0.294568 -0.065714 0.228854
density -0.294568 -0.067984 0.226584
density -0.294568 -0.070237 0.224331
density -0.294568 -0.072472 0.222096
density -0.294568 -0.074692 0.219876
density -0.294568 -0.076882 0.217686
density -0.294568 -0.079071 0.215497
density -0.294568 -0.081255 0.213313
density -0.294568 -0.083441 0.211127
density -0.294568 -0.085637 0.208931
density -0.294568 -0.087851 0.206717
density -0.294568 -0.090047 0.204521
density -0.294568 -0.092315 0.202253
density -0.294568 -0.094632 0.199936
density -0.294568 -0.097012 0.197556
density -0.294568 -0.099467 0.195101
density -0.294568 -0.102010 0.192558
density -0.294568 -0.104654 0.189914
density -0.294568 -0.107413 0.187155
density -0.294568 -0.110299 0.184269
density -0.294568 -0.113482 0.181086
density -0.294568 -0.116665 0.177904
density -0.294568 -0.119996 0.174572
density -0.294568 -0.123495 0.171073
density -0.294568 -0.127171 0.167397
density -0.294568 -0.131034 0.163534
density -0.294568 -0.135091 0.159477
density -0.294568 -0.139351 0.155217
density -0.294568 -0.143818 0.150750
density -0.294568 -0.148497 0.146071
density -0.294568 -0.153517 0.141051
density -0.294568 -0.158701 0.135867
density -0.294568 -0.164274 0.130294
density -0.294568 -0.169975 0.124593
density -0.294568 -0.176086 0.118482
density -0.294568 -0.182487 0.112081
density -0.294568 -0.188944 0.105624
density -0.294568 -0.195789 0.098779
pH 0.062090 0.000000 0.062090
pH 0.062090 0.000187 0.061903
pH 0.062090 0.000206 0.061885
pH 0.062090 0.000225 0.061865
pH 0.062090 0.000247 0.061843
pH 0.062090 0.000271 0.061819
pH 0.062090 0.000297 0.061793
pH 0.062090 0.000326 0.061765
pH 0.062090 0.000357 0.061733
pH 0.062090 0.000391 0.061699
pH 0.062090 0.000428 0.061662
pH 0.062090 0.000469 0.061621
pH 0.062090 0.000514 0.061576
pH 0.062090 0.000563 0.061527
pH 0.062090 0.000616 0.061474
pH 0.062090 0.000675 0.061415
pH 0.062090 0.000738 0.061352
pH 0.062090 0.000808 0.061282
pH 0.062090 0.000884 0.061206
pH 0.062090 0.000966 0.061124
pH 0.062090 0.001056 0.061034
pH 0.062090 0.001154 0.060936
pH 0.062090 0.001260 0.060830
pH 0.062090 0.001376 0.060714
pH 0.062090 0.001501 0.060589
pH 0.062090 0.001637 0.060453
pH 0.062090 0.001784 0.060306
pH 0.062090 0.001943 0.060147
pH 0.062090 0.002115 0.059975
pH 0.062090 0.002301 0.059789
pH 0.062090 0.002501 0.059589
pH 0.062090 0.002716 0.059374
pH 0.062090 0.002946 0.059144
pH 0.062090 0.003193 0.058897
pH 0.062090 0.003457 0.058633
pH 0.062090 0.003739 0.058351
pH 0.062090 0.004039 0.058052
pH 0.062090 0.004357 0.057734
pH 0.062090 0.004693 0.057397
pH 0.062090 0.005048 0.057042
pH 0.062090 0.005422 0.056668
pH 0.062090 0.005814 0.056276
pH 0.062090 0.006223 0.055867
pH 0.062090 0.006649 0.055441
pH 0.062090 0.007090 0.055000
pH 0.062090 0.007546 0.054544
pH 0.062090 0.008015 0.054075
pH 0.062090 0.008495 0.053595
pH 0.062090 0.008984 0.053106
pH 0.062090 0.009479 0.052611
pH 0.062090 0.009979 0.052111
pH 0.062090 0.010480 0.051610
pH 0.062090 0.010980 0.051110
pH 0.062090 0.011477 0.050613
pH 0.062090 0.011968 0.050122
pH 0.062090 0.012450 0.049640
pH 0.062090 0.012921 0.049169
pH 0.062090 0.013380 0.048710
pH 0.062090 0.013825 0.048265
pH 0.062090 0.014255 0.047835
pH 0.062090 0.014669 0.047421
pH 0.062090 0.015067 0.047023
pH 0.062090 0.015451 0.046639
pH 0.062090 0.015821 0.046269
pH 0.062090 0.016179 0.045911
pH 0.062090 0.016528 0.045562
pH 0.062090 0.016870 0.045220
pH 0.062090 0.017205 0.044885
pH 0.062090 0.017543 0.044547
pH 0.062090 0.017886 0.044204
pH 0.062090 0.018237 0.043853
pH 0.062090 0.018601 0.043489
pH 0.062090 0.018982 0.043108
pH 0.062090 0.019372 0.042718
pH 0.062090 0.019794 0.042296
pH 0.062090 0.020244 0.041846
pH 0.062090 0.020724 0.041366
pH 0.062090 0.021236 0.040854
pH 0.062090 0.021783 0.040307
pH 0.062090 0.022367 0.039723
pH 0.062090 0.022989 0.039101
pH 0.062090 0.023649 0.038441
pH 0.062090 0.024382 0.037708
pH 0.062090 0.025122 0.036968
pH 0.062090 0.025899 0.036191
pH 0.062090 0.026715 0.035376
pH 0.062090 0.027568 0.034522
pH 0.062090 0.028461 0.033629
pH 0.062090 0.029391 0.032699
pH 0.062090 0.030360 0.031730
pH 0.062090 0.031366 0.030724
pH 0.062090 0.032410 0.029680
pH 0.062090 0.033515 0.028575
pH 0.062090 0.034646 0.027444
pH 0.062090 0.035847 0.026243
pH 0.062090 0.037065 0.025025
pH 0.062090 0.038356 0.023734
pH 0.062090 0.039695 0.022395
pH 0.062090 0.041038 0.021053
pH 0.062090 0.042448 0.019642
sulphates 0.066813 0.000000 0.066813
sulphates 0.066813 0.000128 0.066686
sulphates 0.066813 0.000140 0.066673
sulphates 0.066813 0.000154 0.066660
sulphates 0.066813 0.000169 0.066645
sulphates 0.066813 0.000185 0.066628
sulphates 0.066813 0.000203 0.066610
sulphates 0.066813 0.000223 0.066590
sulphates 0.066813 0.000245 0.066569
sulphates 0.066813 0.000269 0.066545
sulphates 0.066813 0.000295 0.066519
sulphates 0.066813 0.000323 0.066490
sulphates 0.066813 0.000355 0.066459
sulphates 0.066813 0.000389 0.066424
sulphates 0.066813 0.000427 0.066386
sulphates 0.066813 0.000469 0.066345
sulphates 0.066813 0.000514 0.066299
sulphates 0.066813 0.000564 0.066249
sulphates 0.066813 0.000619 0.066195
sulphates 0.066813 0.000679 0.066135
sulphates 0.066813 0.000744 0.066069
sulphates 0.066813 0.000816 0.065997
sulphates 0.066813 0.000895 0.065918
sulphates 0.066813 0.000982 0.065832
sulphates 0.066813 0.001077 0.065737
sulphates 0.066813 0.001180 0.065633
sulphates 0.066813 0.001294 0.065520
sulphates 0.066813 0.001418 0.065395
sulphates 0.066813 0.001554 0.065259
sulphates 0.066813 0.001703 0.065110
sulphates 0.066813 0.001866 0.064947
sulphates 0.066813 0.002044 0.064769
sulphates 0.066813 0.002239 0.064575
sulphates 0.066813 0.002451 0.064363
sulphates 0.066813 0.002683 0.064131
sulphates 0.066813 0.002935 0.063878
sulphates 0.066813 0.003211 0.063603
sulphates 0.066813 0.003510 0.063303
sulphates 0.066813 0.003836 0.062977
sulphates 0.066813 0.004191 0.062623
sulphates 0.066813 0.004575 0.062238
sulphates 0.066813 0.004992 0.061821
sulphates 0.066813 0.005444 0.061370
sulphates 0.066813 0.005931 0.060882
sulphates 0.066813 0.006458 0.060356
sulphates 0.066813 0.007025 0.059789
sulphates 0.066813 0.007634 0.059180
sulphates 0.066813 0.008288 0.058526
sulphates 0.066813 0.008987 0.057826
sulphates 0.066813 0.009734 0.057080
sulphates 0.066813 0.010529 0.056284
sulphates 0.066813 0.011373 0.055440
sulphates 0.066813 0.012267 0.054546
sulphates 0.066813 0.013211 0.053603
sulphates 0.066813 0.014203 0.052610
sulphates 0.066813 0.015244 0.051570
sulphates 0.066813 0.016331 0.050483
sulphates 0.066813 0.017463 0.049351
sulphates 0.066813 0.018637 0.048176
sulphates 0.066813 0.019850 0.046963
sulphates 0.066813 0.021099 0.045714
sulphates 0.066813 0.022379 0.044434
sulphates 0.066813 0.023687 0.043127
sulphates 0.066813 0.025017 0.041797
sulphates 0.066813 0.026364 0.040450
sulphates 0.066813 0.027723 0.039090
sulphates 0.066813 0.029089 0.037725
sulphates 0.066813 0.030457 0.036357
sulphates 0.066813 0.031820 0.034993
sulphates 0.066813 0.033174 0.033639
sulphates 0.066813 0.034514 0.032300
sulphates 0.066813 0.035835 0.030979
sulphates 0.066813 0.037132 0.029681
sulphates 0.066813 0.038403 0.028410
sulphates 0.066813 0.039643 0.027170
sulphates 0.066813 0.040850 0.025964
sulphates 0.066813 0.042021 0.024793
sulphates 0.066813 0.043154 0.023659
sulphates 0.066813 0.044249 0.022564
sulphates 0.066813 0.045305 0.021509
sulphates 0.066813 0.046321 0.020493
sulphates 0.066813 0.047298 0.019516
sulphates 0.066813 0.048242 0.018572
sulphates 0.066813 0.049143 0.017670
sulphates 0.066813 0.050009 0.016805
sulphates 0.066813 0.050839 0.015974
sulphates 0.066813 0.051637 0.015176
sulphates 0.066813 0.052405 0.014409
sulphates 0.066813 0.053143 0.013670
sulphates 0.066813 0.053855 0.012958
sulphates 0.066813 0.054543 0.012270
sulphates 0.066813 0.055209 0.011605
sulphates 0.066813 0.055856 0.010957
sulphates 0.066813 0.056487 0.010327
sulphates 0.066813 0.057106 0.009707
sulphates 0.066813 0.057710 0.009104
sulphates 0.066813 0.058308 0.008506
sulphates 0.066813 0.058898 0.007915
sulphates 0.066813 0.059474 0.007340
sulphates 0.066813 0.060048 0.006766
alcohol 0.305760 0.000000 0.305760
alcohol 0.305760 0.000965 0.304795
alcohol 0.305760 0.001058 0.304702
alcohol 0.305760 0.001161 0.304599
alcohol 0.305760 0.001273 0.304487
alcohol 0.305760 0.001397 0.304363
alcohol 0.305760 0.001532 0.304228
alcohol 0.305760 0.001680 0.304080
alcohol 0.305760 0.001842 0.303918
alcohol 0.305760 0.002019 0.303741
alcohol 0.305760 0.002214 0.303546
alcohol 0.305760 0.002427 0.303333
alcohol 0.305760 0.002661 0.303099
alcohol 0.305760 0.002916 0.302844
alcohol 0.305760 0.003196 0.302564
alcohol 0.305760 0.003502 0.302258
alcohol 0.305760 0.003836 0.301924
alcohol 0.305760 0.004202 0.301558
alcohol 0.305760 0.004602 0.301158
alcohol 0.305760 0.005039 0.300721
alcohol 0.305760 0.005516 0.300244
alcohol 0.305760 0.006038 0.299722
alcohol 0.305760 0.006606 0.299154
alcohol 0.305760 0.007227 0.298533
alcohol 0.305760 0.007903 0.297857
alcohol 0.305760 0.008640 0.297120
alcohol 0.305760 0.009442 0.296318
alcohol 0.305760 0.010314 0.295446
alcohol 0.305760 0.011263 0.294497
alcohol 0.305760 0.012294 0.293466
alcohol 0.305760 0.013412 0.292348
alcohol 0.305760 0.014625 0.291135
alcohol 0.305760 0.015939 0.289821
alcohol 0.305760 0.017361 0.288399
alcohol 0.305760 0.018898 0.286862
alcohol 0.305760 0.020558 0.285202
alcohol 0.305760 0.022348 0.283412
alcohol 0.305760 0.024275 0.281485
alcohol 0.305760 0.026348 0.279412
alcohol 0.305760 0.028575 0.277185
alcohol 0.305760 0.030962 0.274798
alcohol 0.305760 0.033519 0.272241
alcohol 0.305760 0.036252 0.269508
alcohol 0.305760 0.039168 0.266592
alcohol 0.305760 0.042276 0.263484
alcohol 0.305760 0.045582 0.260178
alcohol 0.305760 0.049092 0.256668
alcohol 0.305760 0.052812 0.252948
alcohol 0.305760 0.056748 0.249012
alcohol 0.305760 0.060905 0.244855
alcohol 0.305760 0.065287 0.240473
alcohol 0.305760 0.069898 0.235862
alcohol 0.305760 0.074740 0.231020
alcohol 0.305760 0.079816 0.225944
alcohol 0.305760 0.085126 0.220634
alcohol 0.305760 0.090672 0.215088
alcohol 0.305760 0.096452 0.209308
alcohol 0.305760 0.102464 0.203296
alcohol 0.305760 0.108702 0.197058
alcohol 0.305760 0.115164 0.190596
alcohol 0.305760 0.121844 0.183916
alcohol 0.305760 0.128732 0.177028
alcohol 0.305760 0.135818 0.169942
alcohol 0.305760 0.143090 0.162670
alcohol 0.305760 0.150533 0.155227
alcohol 0.305760 0.158131 0.147629
alcohol 0.305760 0.165865 0.139895
alcohol 0.305760 0.173705 0.132055
alcohol 0.305760 0.181642 0.124118
alcohol 0.305760 0.189644 0.116116
alcohol 0.305760 0.197684 0.108076
alcohol 0.305760 0.205731 0.100029
alcohol 0.305760 0.213756 0.092004
alcohol 0.305760 0.221720 0.084040
alcohol 0.305760 0.229602 0.076158
alcohol 0.305760 0.237364 0.068396
alcohol 0.305760 0.244971 0.060789
alcohol 0.305760 0.252392 0.053368
alcohol 0.305760 0.259594 0.046166
alcohol 0.305760 0.266548 0.039212
alcohol 0.305760 0.273225 0.032535
alcohol 0.305760 0.279601 0.026159
alcohol 0.305760 0.285605 0.020155
alcohol 0.305760 0.291304 0.014456
alcohol 0.305760 0.296643 0.009117
alcohol 0.305760 0.301607 0.004153
alcohol 0.305760 0.306185 0.000425
alcohol 0.305760 0.310371 0.004611
alcohol 0.305760 0.314159 0.008399
alcohol 0.305760 0.317547 0.011787
alcohol 0.305760 0.320537 0.014777
alcohol 0.305760 0.323132 0.017372
alcohol 0.305760 0.325324 0.019564
alcohol 0.305760 0.327123 0.021363
alcohol 0.305760 0.328504 0.022744
alcohol 0.305760 0.329538 0.023778
alcohol 0.305760 0.330161 0.024401
alcohol 0.305760 0.330414 0.024654
alcohol 0.305760 0.330391 0.024631
alcohol 0.305760 0.329996 0.024236

5.7.6 Evaluasi Manual vs Package

white_metrics_comparison <- bind_rows(
  white_manual_metrics %>% mutate(method = "Manual Ridge"),
  white_package_metrics %>% mutate(method = "Package Ridge")
) %>%
  select(method, everything())

kable(white_metrics_comparison, digits = 4, caption = "Performa Manual vs Package — White Wine")
Performa Manual vs Package — White Wine
method RMSE MAE R2
Manual Ridge 0.7624 0.5851 0.2721
Package Ridge 0.7638 0.5860 0.2696

Hasil evaluasi menunjukkan bahwa Manual Ridge dan Package Ridge memiliki performa yang sangat berdekatan. Manual Ridge menghasilkan RMSE = 0,7624, MAE = 0,5851, dan R² = 0,2721, sedangkan Package Ridge menghasilkan RMSE = 0,7638, MAE = 0,5860, dan R² = 0,2696. Selisih pada ketiga metrik tersebut relatif kecil, sehingga kedua metode memberikan hasil yang hampir sama. Hal ini menunjukkan bahwa implementasi Ridge secara manual telah menghasilkan model yang konsisten dengan implementasi menggunakan package R, meskipun terdapat sedikit perbedaan pada hasil evaluasinya.

5.7.7 Actual vs Predicted

white_plot <- tibble(
  actual = white_test$quality,
  manual = white_manual_pred,
  package = white_package_pred
) %>%
  pivot_longer(-actual, names_to = "method", values_to = "predicted")

ggplot(white_plot, aes(actual, predicted)) +
  geom_point(alpha = .25) +
  geom_abline(slope = 1, intercept = 0, linetype = "dashed") +
  facet_wrap(~method) +
  labs(title = "Actual vs Predicted — White Wine", x = "Actual Quality", y = "Predicted Quality") +
  theme_minimal(base_size = 12)

Plot actual vs predicted menunjukkan bahwa hasil prediksi Manual Ridge dan Package Ridge memiliki pola yang sangat mirip. Pada kedua metode, prediksi cenderung terkonsentrasi di sekitar kualitas 5–7, sedangkan nilai aktual yang lebih rendah maupun lebih tinggi memiliki penyebaran prediksi yang cukup lebar. Garis putus-putus menunjukkan kondisi prediksi ideal, yaitu ketika nilai prediksi sama dengan nilai aktual. Banyak titik yang berada cukup jauh dari garis tersebut, terutama pada kualitas aktual 4, 5, dan 7, sehingga masih terdapat kesalahan prediksi yang cukup besar. Meskipun demikian, pola kedua metode hampir sama secara visual, yang menunjukkan bahwa hasil perhitungan manual dan package memberikan prediksi yang relatif konsisten.

5.7.8 Diagnostik Residual

white_residual_df <- tibble(
  fitted = white_package_pred,
  residual = white_test$quality - white_package_pred
)

ggplot(white_residual_df, aes(fitted, residual)) +
  geom_point(alpha = .3) +
  geom_hline(yintercept = 0, linetype = "dashed") +
  geom_smooth(method = "loess", se = TRUE) +
  labs(title = "Residual vs Predicted — White Wine", x = "Predicted", y = "Residual") +
  theme_minimal(base_size = 12)

5.8 Benchmark White Wine

5.8.1 OLS

white_ols <- linear_reg() %>% set_engine("lm") %>% fit(quality ~ ., data = white_train)
white_ols_pred <- predict(white_ols, new_data = white_test)$.pred
white_ols_metrics <- metric_table(white_test$quality, white_ols_pred)

5.8.2 Random Forest

set.seed(12345)
white_rf <- randomForest(
  quality ~ ., data = white_train,
  ntree = 500,
  mtry = floor(sqrt(length(predictors))),
  importance = TRUE
)
white_rf_pred <- predict(white_rf, white_test)
white_rf_metrics <- metric_table(white_test$quality, white_rf_pred)

5.8.3 Perbandingan Model

white_model_comparison <- bind_rows(
  white_package_metrics %>% mutate(model = "Ridge Package"),
  white_ols_metrics %>% mutate(model = "OLS"),
  white_rf_metrics %>% mutate(model = "Random Forest")
) %>% select(model, everything())

kable(white_model_comparison, digits = 4, caption = "Benchmark Model — White Wine")
Benchmark Model — White Wine
model RMSE MAE R2
Ridge Package 0.7638 0.5860 0.2696
OLS 0.7612 0.5849 0.2744
Random Forest 0.6112 0.4374 0.5413

Pada White Wine, hasil benchmark menunjukkan bahwa Ridge Package dan OLS memiliki performa yang sangat berdekatan, dengan RMSE masing-masing 0,7638 dan 0,7612, MAE 0,5860 dan 0,5849, serta R² 0,2696 dan 0,2744. Sementara itu, Random Forest menghasilkan RMSE 0,6112, MAE 0,4374, dan R² 0,5413. Ini menunjukkan bahwa pada data White Wine, performa kedua model regresi linear relatif mirip, sedangkan Random Forest menghasilkan kesalahan prediksi yang lebih kecil dan mampu menjelaskan proporsi variasi kualitas wine yang lebih besar berdasarkan metrik evaluasi yang digunakan.

6 Perbandingan Akhir Red dan White Wine

6.1 Konsistensi Manual vs Package

final_method_comparison <- bind_rows(
  red_manual_metrics %>% mutate(dataset = "Red Wine", method = "Manual Ridge"),
  red_package_metrics %>% mutate(dataset = "Red Wine", method = "Package Ridge"),
  white_manual_metrics %>% mutate(dataset = "White Wine", method = "Manual Ridge"),
  white_package_metrics %>% mutate(dataset = "White Wine", method = "Package Ridge")
) %>%
  select(dataset, method, everything())

kable(final_method_comparison, digits = 4, caption = "Manual vs Package")
Manual vs Package
dataset method RMSE MAE R2
Red Wine Manual Ridge 0.6515 0.4956 0.3052
Red Wine Package Ridge 0.6515 0.4955 0.3052
White Wine Manual Ridge 0.7624 0.5851 0.2721
White Wine Package Ridge 0.7638 0.5860 0.2696

6.2 Nilai Lambda

tibble(
  dataset = c("Red Wine", "White Wine"),
  lambda_manual = c(red_lambda_manual, white_lambda_manual),
  lambda_package = c(red_best$penalty, white_best$penalty)
) %>%
  kable(digits = 6, caption = "Lambda Optimal Manual dan Package")
Lambda Optimal Manual dan Package
dataset lambda_manual lambda_package
Red Wine 0.053367 0.04037
White Wine 0.013219 0.00010

6.3 Interpretasi

Hasil perbandingan menunjukkan bahwa Manual Ridge dan Package Ridge menghasilkan performa yang sangat dekat pada kedua dataset, meskipun nilai \(\lambda\) optimal yang dipilih tidak selalu sama. Pada Red Wine, \(\lambda\) optimal sebesar 0,053367 untuk manual dan 0,04037 untuk package, sedangkan pada White Wine perbedaannya lebih besar, yaitu 0,013219 pada manual dan 0,00010 pada package. Meskipun demikian, perbedaan \(\lambda\) tersebut tidak menyebabkan perubahan besar pada performa model. Pada Red Wine, kedua metode menghasilkan RMSE = 0,6515 dan R² = 0,3052, dengan perbedaan MAE yang sangat kecil (0,4956 dan 0,4955). Pada White Wine, performanya juga berdekatan, yaitu RMSE 0,7624 dan 0,7638, MAE 0,5851 dan 0,5860, serta R² 0,2721 dan 0,2696. Hal ini menunjukkan bahwa meskipun proses pemilihan \(\lambda\) menghasilkan nilai yang berbeda, terutama pada White Wine, solusi Ridge yang diperoleh tetap memberikan prediksi dan performa yang hampir sama. Perbedaan nilai \(\lambda\) dapat terjadi karena titik minimum hasil cross-validation tidak selalu menghasilkan perbedaan performa yang besar di sekitar nilai optimum. Perbandingan Red Wine dan White Wine di sini hanya digunakan untuk melihat perilaku model pada dua dataset yang berbeda, bukan sebagai ranking kualitas wine.

7 Kesimpulan

Analisis Ridge Regression dilakukan melalui dua alur komputasi, yaitu perhitungan manual menggunakan standardisasi eksplisit dan solusi matriks \(\left(Z^TZ+n\lambda I\right)^{-1}Z^T(y-\bar{y})\), serta perhitungan menggunakan package R melalui recipe() dan glmnet. Pada jalur package, step_normalize() melakukan standardisasi berdasarkan data training dan glmnet diatur dengan standardize = FALSE agar tidak terjadi standardisasi ganda. Pemilihan \(\lambda\) dilakukan menggunakan 10-fold cross-validation pada data training, kemudian model dievaluasi menggunakan data test. Hasil menunjukkan bahwa Manual Ridge dan Package Ridge memberikan performa yang sangat konsisten pada Red Wine maupun White Wine, meskipun nilai \(\lambda\) optimal berbeda, terutama pada White Wine. Kedekatan nilai RMSE, MAE, dan R² menunjukkan bahwa kedua implementasi menghasilkan model yang secara praktis serupa, sehingga hasil tersebut sekaligus menjadi pemeriksaan bahwa implementasi manual telah mengikuti formulasi Ridge dan menghasilkan prediksi yang konsisten dengan implementasi package.

8 Keterbatasan

Beberapa keterbatasan perlu diperhatikan. Pertama, dataset hanya memuat karakteristik fisikokimia dan skor sensorik; informasi lain seperti merek, varietas anggur, harga, atau jenis anggur tidak tersedia (UCI Machine Learning Repository). Kedua, quality merupakan skor sensorik sehingga hubungan dengan karakteristik kimia tidak harus sepenuhnya linear. Ketiga, Ridge terutama menangani stabilitas koefisien akibat korelasi antar-prediktor dan tidak otomatis menjamin bahwa bentuk linear merupakan bentuk hubungan yang paling tepat. Keempat, benchmark Random Forest digunakan untuk konteks prediksi dan tidak menggantikan interpretasi koefisien Ridge.

Daftar Pustaka

  1. Cortez, P., Cerdeira, A., Almeida, F., Matos, T., & Reis, J. (2009). Modeling wine preferences by data mining from physicochemical properties. Decision Support Systems, 47(4), 547–553. https://doi.org/10.1016/j.dss.2009.05.016

  2. UCI Machine Learning Repository. Wine Quality. Dataset red and white Vinho Verde wine. DOI: 10.24432/C56S3T. https://archive.ics.uci.edu/dataset/186/wine+quality

  3. Hastie, T., Tibshirani, R., & Friedman, J. (2009). The Elements of Statistical Learning (2nd ed.). Springer. https://doi.org/10.1007/978-0-387-84858-7

  4. Kuhn, M., & Johnson, K. (2013). Applied Predictive Modeling. Springer. https://doi.org/10.1007/978-1-4614-6849-3

  5. Kuhn, M. (2026). recipes: Preprocessing and Feature Engineering Steps for Modeling. R package documentation. https://recipes.tidymodels.org/reference/step_normalize.html

  6. Friedman, J., Hastie, T., Tibshirani, R., et al. glmnet: Lasso and Elastic-Net Regularized Generalized Linear Models. CRAN documentation. https://CRAN.R-project.org/package=glmnet

Verifikasi Standardisasi

Memastikan bahwa data yang digunakan oleh dua jalur memiliki konsep standardisasi yang sama.

red_check <- tibble(
  variable = predictors,
  manual_mean = colMeans(Z_red),
  manual_sd = apply(Z_red, 2, sd)
)

white_check <- tibble(
  variable = predictors,
  manual_mean = colMeans(Z_white),
  manual_sd = apply(Z_white, 2, sd)
)

kable(red_check, digits = 6, caption = "Verifikasi Standardisasi Red Wine")
Verifikasi Standardisasi Red Wine
variable manual_mean manual_sd
fixed.acidity 0 1
volatile.acidity 0 1
citric.acid 0 1
residual.sugar 0 1
chlorides 0 1
free.sulfur.dioxide 0 1
total.sulfur.dioxide 0 1
density 0 1
pH 0 1
sulphates 0 1
alcohol 0 1
kable(white_check, digits = 6, caption = "Verifikasi Standardisasi White Wine")
Verifikasi Standardisasi White Wine
variable manual_mean manual_sd
fixed.acidity 0 1
volatile.acidity 0 1
citric.acid 0 1
residual.sugar 0 1
chlorides 0 1
free.sulfur.dioxide 0 1
total.sulfur.dioxide 0 1
density 0 1
pH 0 1
sulphates 0 1
alcohol 0 1

Secara numerik, mean prediktor terstandardisasi akan mendekati 0 dan simpangan baku mendekati 1. Pada implementasi package, parameter yang digunakan berasal dari training data melalui step_normalize()