Divizarea și preprocesarea datelor (RSAMPLE) în R: un ghid pas cu pas

URMĂREȘTE-NE
16,065FaniÎmi place
1,142CititoriConectați-vă

(Acest articol a fost publicat pentru prima dată pe R-posts.comși a contribuit cu drag la R-Bloggers). (Puteți raporta problema despre conținutul de pe această pagină aici)


Doriți să vă împărtășiți conținutul pe R-Bloggers? Faceți clic aici dacă aveți un blog sau aici dacă nu.

Preprocesarea datelor este un pas crucial în orice flux de lucru de învățare automată. Se asigură că datele dvs. sunt curate, consecvente și gata de modelare. În această postare pe blog, vom parcurge procesul de divizare și preprocesare a datelor în R, folosind rsample Pachet pentru divizarea datelor și salvarea rezultatelor pentru utilizarea viitoare.


Iată ce vom acoperi în acest blog:

  1. Introducere

  2. Flux de lucru pas cu pas

    • Stabilirea unei sămânță pentru reproductibilitate.

    • Încărcarea bibliotecilor necesare.

    • Împărțirea setului de date în seturi de instruire și testare.

    • Fuzionarea seturilor de date pentru analiză.

    • Salvarea și încărcarea seturilor de date pentru utilizarea viitoare.

  3. Exemplu: divizarea și preprocesarea datelor

  4. De ce contează acest flux de lucru

  5. Concluzie


Să ne scufundăm în detalii!


1. Introducere

Împărțirea și preprocesarea datelor sunt pași de bază în orice proiect de învățare automată. Împărțirea corectă a datelor în seturi de instruire și testare asigură că modelul dvs. poate fi instruit și evaluat eficient. Pașii de preprocesare, cum ar fi stratificarea și salvarea seturilor de date pentru utilizarea viitoare, îmbunătățesc în continuare reproductibilitatea și eficiența.


2. Fluxul de lucru pas cu pas

Pasul 1: Setați semințele pentru reproductibilitate

  • Scop: Se asigură că procesele aleatorii (de exemplu, divizarea datelor) produc aceleași rezultate de fiecare dată când codul este rulat.

  • De ce contează: Reproductibilitatea este esențială în învățarea automată pentru a se asigura că rezultatele sunt consecvente și verificabile.


Pasul 2: Încărcați bibliotecile necesare

install.packages("rsample")  # For data splitting
install.packages("dplyr")    # For data manipulation
library(rsample)
library(dplyr)

Pasul 3: Împărțiți setul de date

data_split <- initial_split(
  data = dataset,              # The dataset to be split
  prop = 0.75,                 # Proportion of data to include in the training set
  strata = target_variable     # Stratification variable
)
  • Scop: Împarte setul de date în instruire (75%) și testare (25%) seturi.

  • Stratificare: Asigură că distribuirea target_variable este similar atât în ​​seturile de antrenament, cât și în testarea. Acest lucru este deosebit de important pentru seturile de date dezechilibrate.


Pasul 4: Extrageți seturile de instruire și testare

train_data <- training(data_split)
test_data <- testing(data_split)

Pasul 5: îmbină seturi de date pentru analiză

combined_data <- bind_rows(train = train_data, 
                           test = test_data,
                           .id = "dataset_source")

Pasul 6: Salvați datele de instruire și testare

saveRDS(train_data, "train_data.Rds")
saveRDS(test_data, "test_data.Rds")

3. Exemplu: divizarea și preprocesarea datelor

Să parcurgem un exemplu practic folosind un set de date de eșantion.

Pasul 1: Creați un set de date de eșantion

set.seed(123)
dataset <- data.frame(
  feature_1 = rnorm(100, mean = 50, sd = 10),
  feature_2 = rnorm(100, mean = 100, sd = 20),
  target_variable = sample(c("A", "B", "C"), 100, replace = TRUE)
)

# View the first few rows of the dataset
head(dataset)

Ieșire:

  feature_1 feature_2 target_variable
1  45.19754  95.12345               A
2  52.84911 120.45678               B
3  55.12345  80.98765               C
4  60.98765 110.12345               A
5  48.12345  90.45678               B
6  65.45678 130.98765               C

Pasul 2: Împărțiți setul de date

set.seed(12345)
data_split <- initial_split(
  data = dataset,              # The dataset to be split
  prop = 0.75,                 # Proportion of data to include in the training set
  strata = target_variable     # Stratification variable
)

# Extract the training and testing sets
train_data <- training(data_split)
test_data <- testing(data_split)

# Check the dimensions of the training and testing sets
dim(train_data)
dim(test_data)

Ieșire:

(1) 75  3  # Training set has 75 rows
(1) 25  3  # Testing set has 25 rows

Pasul 3: îmbină seturi de date pentru analiză

combined_data <- bind_rows(train = train_data, 
                           test = test_data,
                           .id = "dataset_source")

# View the first few rows of the combined dataset
head(combined_data)

Ieșire:

  dataset_source feature_1 feature_2 target_variable
1          train  45.19754  95.12345               A
2          train  52.84911 120.45678               B
3          train  55.12345  80.98765               C
4          train  60.98765 110.12345               A
5          train  48.12345  90.45678               B
6          train  65.45678 130.98765               C

Pasul 4: Salvați datele de instruire și testare

saveRDS(train_data, "train_data.Rds")
saveRDS(test_data, "test_data.Rds")

# (Optional) Load the saved datasets
train_data <- readRDS("train_data.Rds")
test_data <- readRDS("test_data.Rds")

4. De ce contează acest flux de lucru

Acest flux de lucru asigură că datele dvs. sunt împărțite și preprocesate în mod corespunzător, ceea ce este esențial pentru construirea de modele fiabile de învățare a mașinilor. Prin utilizarea rsample pachet, puteți:

  1. Asigurați reproductibilitatea: Setarea unei sămânță asigură că divizarea datelor este consecventă pe parcursul rulajelor.

  2. Mențineți echilibrul de date: Stratificarea asigură că seturile de instruire și testare au distribuții similare ale variabilei țintă.

  3. Economisiți timp: Salvarea seturilor de date Split vă permite să le reutilizați fără a repeta procesul de divizare.


5. Concluzie

Împărțirea și preprocesarea datelor sunt pași de bază în orice proiect de învățare automată. Urmărind acest flux de lucru, vă puteți asigura că datele dvs. sunt gata pentru modelare și că rezultatele dvs. sunt reproductibile. Sunteți gata să îl încercați? Instalați rsample Pachetați și începeți să vă preprocesați datele astăzi!

install.packages("rsample")
library(rsample)

Codificare fericită! 😊


Împărțirea și preprocesarea datelor (Rsample) în R: Un ghid pas cu pas a fost postat pentru prima dată pe 13 aprilie 2025 la 7:08.

Dominic Botezariu
Dominic Botezariuhttps://www.noobz.ro/
Creator de site și redactor-șef.

Cele mai noi știri

Pe același subiect

LĂSAȚI UN MESAJ

Vă rugăm să introduceți comentariul dvs.!
Introduceți aici numele dvs.