Cara mengelompokkan bingkai data berdasarkan daftar nilai di r


Anda dapat menggunakan salah satu metode berikut untuk mendefinisikan kembali bingkai data dengan daftar nilai di R:

Metode 1: Gunakan Basis R

 df_new <- df[df$my_column %in% vals,]

Metode 2: gunakan dplyr

 library (dplyr)

df_new <- filter(df, my_column %in% vals)

Metode 3: Gunakan data.tabel

 library (data.table)

df_new <- setDT(df, key=' my_column ')[J(vals)]

Contoh berikut menunjukkan cara menggunakan masing-masing metode ini dalam praktik dengan kerangka data berikut di R:

 #create data frame
df <- data. frame (team=c('A', 'B', 'B', 'B', 'C', 'C', 'C', 'D'),
                 points=c(12, 22, 35, 34, 20, 28, 30, 18),
                 assists=c(4, 10, 11, 12, 12, 8, 6, 10))

#view data frame
df

  team points assists
1 to 12 4
2 B 22 10
3 B 35 11
4 B 34 12
5 C 20 12
6 C 28 8
7 C 30 6
8 D 18 10

Metode 1: subset bingkai data berdasarkan daftar nilai dalam basis R

Kode berikut memperlihatkan cara membuat subset bingkai data sehingga hanya berisi baris dengan nilai “A” atau “C” di kolom tim :

 #define values to subset by
vals <- c(' A ', ' C ')

#subset data frame to only contain rows where team is 'A' or 'C'
df_new <- df[df$team %in% vals,]

#view results
df_new

  team points assists
1 to 12 4
5 C 20 12
6 C 28 8
7 C 30 6

Bingkai data yang dihasilkan hanya berisi baris yang memiliki nilai “A” atau “C” di kolom Tim .

Perhatikan bahwa kami menggunakan fungsi dasar R dalam contoh ini, jadi kami tidak perlu memuat paket tambahan apa pun.

Metode 2: Subset kerangka data berdasarkan daftar nilai di dplyr

Kode berikut menunjukkan cara membuat subset bingkai data agar hanya berisi baris dengan nilai “A” atau “C” di kolom tim menggunakan fungsi filter() dari paket dplyr :

 library (dplyr)

#define values to subset by
vals <- c(' A ', ' C ')

#subset data frame to only contain rows where team is 'A' or 'C'
df_new <- filter(df, team %in% vals)

#view results
df_new

  team points assists
1 to 12 4
5 C 20 12
6 C 28 8
7 C 30 6

Bingkai data yang dihasilkan hanya berisi baris yang memiliki nilai “A” atau “C” di kolom Tim .

Metode 3: Subset kerangka data berdasarkan daftar nilai di data.tabel

Kode berikut menunjukkan cara membuat subset bingkai data agar hanya berisi baris dengan nilai “A” atau “C” di kolom tim menggunakan fungsi dalam paket data.table :

 library (data.table)

#define values to subset by
vals <- c(' A ', ' C ')

#subset data frame to only contain rows where team is 'A' or 'C'
df_new <- setDT(df, key=' team ')[J(vals)]

#view results
df_new

   team points assists
1: A 12 4
2: C 20 12
3: C 28 8
4: C 30 6

Bingkai data yang dihasilkan hanya berisi baris yang memiliki nilai “A” atau “C” di kolom Tim .

Terkait: Cara Menggunakan Operator %in% di R (Dengan Contoh)

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di R:

Cara mengelompokkan bingkai data berdasarkan tingkat faktor di R
Cara menentukan subdefinisi berdasarkan rentang tanggal di R
Cara memplot subset bingkai data di R

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *