A: periksa apakah baris dari satu bingkai data ada di bingkai data lainnya


Anda bisa menggunakan sintaks berikut untuk menambahkan kolom baru ke bingkai data di R yang menunjukkan apakah setiap baris ada di bingkai data lain:

 df1$exists <- do. call (paste0, df1) %in% do. call (paste0, df2)

Sintaks khusus ini menambahkan kolom bernama ada ke bingkai data bernama df1 yang berisi TRUE atau FALSE untuk menunjukkan apakah setiap baris di df1 ada di bingkai data lain yang disebut df2 .

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: periksa apakah baris dari satu bingkai data ada di bingkai data lain di R

Misalkan kita memiliki dua frame data berikut di R:

 #create first data frame
df1 <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
                  dots=c(12, 15, 22, 29, 24))

#view first data frame
df1

  team points
1 to 12
2 B 15
3 C 22
4 D 29
5 E 24

#create second data frame
df2 <- data. frame (team=c('A', 'D', 'F', 'G', 'H'),
                  dots=c(12, 29, 15, 19, 10))

#view second data frame
df2

  team points
1 to 12
2 D 29
3 F 15
4 G 19
5:10 a.m.

Kita bisa menggunakan sintaks berikut untuk menambahkan kolom bernama ada ke bingkai data pertama yang menunjukkan apakah setiap baris ada di bingkai data kedua:

 #add new column to df1 that shows if row exists in df2
df1$exists <- do. call (paste0, df1) %in% do. call (paste0, df2)

#view updated data frame
df1

  team points exists
1 TO 12 TRUE
2 B 15 FALSE
3 C 22 FALSE
4 D 29 TRUE
5 E 24 FALSE

Kolom baru ada menunjukkan apakah setiap baris dalam bingkai data pertama ada di bingkai data kedua.

Dari hasilnya kita dapat melihat:

  • Baris pertama df1 ada di df2 .
  • Baris kedua df1 tidak ada di df2 .
  • Baris ketiga df1 tidak ada di df2 .

Dan seterusnya.

Perhatikan bahwa Anda juga dapat menggunakan is.numeric() untuk menampilkan angka 1 dan 0 , bukan TRUE atau FALSE di kolom yang ada:

 #add new column to df1 that shows if row exists in df2
df1$exists <- as. numeric (do. call (paste0, df1) %in% do. call (paste0, df2))

#view updated data frame
df1

  team points exists
1 to 12 1
2 B 15 0
3 C 22 0
4 D 29 1
5 E 24 0

Nilai 1 menunjukkan bahwa baris dari blok data pertama ada di blok kedua.

Sebaliknya, nilai 0 menunjukkan bahwa baris pada frame data pertama tidak ada pada frame kedua.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di R:

A: Bagaimana cara memeriksa apakah beberapa kolom sama
A: Cara memilih satu baris dalam bingkai data
A: Cara mereplikasi baris dalam bingkai data

Tambahkan komentar

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