Bagaimana cara mengubah variabel kategori menjadi numerik di r
Anda dapat menggunakan salah satu metode berikut untuk mengonversi variabel kategori ke variabel numerik di R:
Metode 1: Ubah Variabel Kategorikal menjadi Numerik
df$var1 <- unclass(df$var1)
Metode 2: Ubah Beberapa Variabel Kategorikal menjadi Nilai Numerik
df[, c(' var1 ', ' var2 ')] <- sapply(df[, c(' var1 ', ' var2 ')], unclass)
Metode 3: Ubah Semua Variabel Kategorikal menjadi Nilai Numerik
df[sapply(df, is. factor )] <- data. matrix (df[sapply(df, is.factor )])
Contoh berikut menunjukkan cara menggunakan setiap metode dengan kerangka data berikut:
#create data frame with some categorical variables df <- data. frame (team=as. factor (c('A', 'B', 'C', 'D')), conf=as. factor (c('AL', 'AL', 'NL', 'NL')), win=as. factor (c('Yes', 'No', 'No', 'Yes')), dots=c(122, 98, 106, 115)) #view data frame df team conf win points 1 A AL Yes 122 2 B AL No 98 3 C NL No 106 4 D NL Yes 115
Metode 1: Ubah Variabel Kategorikal menjadi Numerik
Kode berikut menunjukkan cara mengonversi variabel kategorikal dalam bingkai data menjadi variabel numerik:
#convert 'team' variable to numeric
df$team <- unclass(df$team)
#view updated data frame
df
team conf win points
1 1 AL Yes 122
2 2 AL No. 98
3 3 NL No 106
4 4 NL Yes 115
Perhatikan bahwa nilai variabel “tim” telah diubah menjadi nilai numerik.
Metode 2: Ubah Beberapa Variabel Kategorikal menjadi Nilai Numerik
Kode berikut menunjukkan cara mengonversi beberapa variabel kategori dalam bingkai data menjadi variabel numerik:
#convert 'team' and 'win' variables to numeric
df[, c(' team ', ' win ')] <- sapply(df[, c(' team ', ' win ')], unclass)
#view updated data frame
df
team conf win points
1 1 AL 2 122
2 2 AL 1 98
3 3 NL 1,106
4 4 NL 2 115
Perhatikan bahwa nilai variabel “tim” dan “menang” telah diubah menjadi nilai numerik.
Metode 3: Ubah Semua Variabel Kategorikal menjadi Nilai Numerik
Kode berikut menunjukkan cara mengonversi semua variabel kategori dalam bingkai data menjadi variabel numerik:
#convert all categorical variables to numeric
df[sapply(df, is. factor )] <- data. matrix (df[sapply(df, is.factor )])
#view updated data frame
df
team conf win points
1 1 1 2 122
2 2 1 1 98
3 3 2 1 106
4 4 2 2 115
Perhatikan bahwa nilai masing-masing variabel kategori dalam bingkai data telah diubah menjadi nilai numerik.
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan konversi umum lainnya di R:
Bagaimana cara mengubah tanggal menjadi angka di R
Cara mengubah karakter menjadi faktor di R
Cara mengubah faktor menjadi karakter di R