Cara menggunakan fungsi leleh() di r
Anda dapat menggunakan fungsimelt() dari paket reshape2 di R untuk mengonversi bingkai data dari format lebar ke format panjang.
Format lebar berisi nilai yang tidak terulang di kolom pertama.
Format panjang berisi nilai yang berulang di kolom pertama.
Misalnya, pertimbangkan dua himpunan data berikut yang berisi data yang sama persis dan dinyatakan dalam format berbeda:
Fungsimelt () menggunakan sintaks dasar berikut untuk mengonversi bingkai data format lebar ke format panjang:
melt(df, id=' team ')
Argumen id menentukan variabel mana yang akan digunakan sebagai kolom pertama dari bingkai data yang nilainya akan diulang.
Contoh berikut menunjukkan cara menggunakan fungsi ini dalam praktiknya.
Contoh: Cara menggunakan leleh() di R
Misalkan kita memiliki bingkai data berikut di R yang saat ini dalam format lebar:
#create data frame in wide format df <- data. frame (team=c('A', 'B', 'C', 'D'), dots=c(88, 91, 99, 94), assists=c(12, 17, 24, 28), rebounds=c(22, 28, 30, 31)) #view data frame df team points assists rebounds 1 A 88 12 22 2 B 91 17 28 3 C 99 24 30 4 D 94 28 31
Kita dapat menggunakan fungsimelt () untuk dengan cepat mengubah bingkai data menjadi format panjang:
library (reshape2) #use melt() to convert data frame from wide to long format long_df <- melt(df, id=' team ') #view long data frame long_df team variable value 1 A points 88 2 B points 91 3 C points 99 4 D points 94 5 A assists 12 6 B assists 17 7 C assists 24 8 D assists 28 9 A rebounds 22 10 B rebounds 28 11 C rebounds 30 12 D rebounds 31
Perhatikan bahwa bingkai data sekarang dalam format panjang.
Kolom poin , assist , dan rebound semuanya telah dikompresi menjadi satu kolom yang disebut variabel , sedangkan nilainya semuanya telah dikompresi menjadi satu kolom yang disebut nilai .
Jangan ragu untuk mengganti nama kolom bingkai data yang dihasilkan menggunakan fungsi nama() :
#rename columns in long_df names(long_df) <- c(' team ', ' metric ', ' amount ') #view updated data frame long_df team metric amount 1 A points 88 2 B points 91 3 C points 99 4 D points 94 5 A assists 12 6 B assists 17 7 C assists 24 8 D assists 28 9 A rebounds 22 10 B rebounds 28 11 C rebounds 30 12 D rebounds 31
Perhatikan bahwa kolom telah diganti namanya.
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di R:
Cara memfilter baris di R
Cara mengubah urutan kerangka data menjadi R
Cara mengganti nama kolom bingkai data di R