Cara menggunakan fungsi intersect() di r (dengan contoh)


Anda dapat menggunakan fungsi intersect() di basis R untuk menemukan perpotongan dua objek.

“Persimpangan” hanya mewakili elemen-elemen yang dimiliki oleh kedua objek tersebut.

Fungsi ini menggunakan sintaks dasar berikut:

 intersect(object1, object2)

Contoh berikut menunjukkan cara menggunakan fungsi intersect() dengan vektor dan bingkai data.

Contoh 1: Gunakan intersect() dengan vektor

Kode berikut menunjukkan cara menggunakan fungsi intersect() untuk mencari perpotongan antara dua vektor di R:

 #define two vectors
x <- c(1, 4, 5, 5, 9, 12, 19)
y <- c(1, 2, 5, 5, 10, 14, 19)

#find intersection between two vectors
intersect(x,y)

[1] 1 5 19

Dari hasilnya kita dapat melihat bahwa vektor x dan y mempunyai tiga nilai yang sama: 1 , 5 dan 19 .

Perhatikan bahwa fungsi intersect() juga berfungsi dengan vektor karakter:

 #define two vectors
x <- c('A', 'B', 'C', 'D', 'E')
y <- c('C', 'D', 'E', 'F')

#find intersection between two vectors
intersect(x,y)

[1] “C” “D” “E”

Dari hasilnya kita dapat melihat bahwa vektor x dan y mempunyai tiga string yang sama: C , D dan E.

Perhatikan bahwa kedua vektor tidak harus memiliki panjang yang sama agar fungsi intersect() dapat berfungsi.

Contoh 2: Gunakan intersect() dengan bingkai data

Untuk menemukan garis kesamaan dari dua frame data, kita perlu menggunakan fungsi intersect() dari paket dplyr .

Kode berikut menunjukkan cara menggunakan fungsi ini untuk menemukan baris yang memiliki kesamaan antara dua bingkai data:

 library (dplyr) 

#define two data frames
df1 <- data. frame (team=c('A', 'A', 'B', 'B'),
                  dots=c(12, 20, 25, 19))

df1

  team points
1 to 12
2 to 20
3 B 25
4 B 19

df2 <- data. frame (team=c('A', 'A', 'B', 'C'),
                  dots=c(12, 22, 25, 32))

df2

  team points
1 to 12
2 to 22
3 B 25
4 C 32

#find intersection between two data frames
dplyr::intersect(df1, df2)

  team points
1 to 12
2 B 25

Dari hasilnya terlihat bahwa frame data memiliki dua baris yang sama.

Perhatikan bahwa fungsi intersect() ini hanya akan mengembalikan baris yang memiliki nilai yang sama di setiap kolom di antara dua bingkai data.

Perhatikan juga bahwa kita dapat menggunakan fungsi length() dengan fungsi intersect() untuk mencari jumlah baris yang sama dari dua bingkai data:

 #find number of rows in common between the two data frames
length(dplyr::intersect(df1, df2))

[1] 2

Dari hasilnya terlihat bahwa kedua frame data memiliki 2 baris yang sama.

Sumber daya tambahan

Tutorial berikut menjelaskan cara menggunakan fungsi umum lainnya di R:

Cara menggunakan fungsi dim() di R
Cara menggunakan fungsi transform() di R
Cara menggunakan fungsi swep() di R

Tambahkan komentar

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