Cara menggunakan fungsi with() dan inside() di r
Fungsi with() dan inside() di R dapat digunakan untuk mengevaluasi ekspresi berdasarkan bingkai data.
Fungsi-fungsi ini menggunakan sintaks berikut:
with(data, expression)
within(data, expression)
Emas:
- data: Nama blok data
- ekspresi: Ekspresi untuk dievaluasi
Berikut perbedaan kedua fungsi tersebut:
- with() mengevaluasi ekspresi tanpa mengubah bingkai data asli.
- inside() mengevaluasi ekspresi dan membuat salinan bingkai data asli.
Contoh berikut menunjukkan cara menggunakan setiap fungsi dalam praktik dengan kerangka data berikut:
#create data frame
df <- data. frame (x=c(3, 5, 5, 7, 6, 10),
y=c(2, 2, 0, 5, 9, 4))
#view data frame
df
xy
1 3 2
2 5 2
3 5 0
4 7 5
5 6 9
6 10 4
Contoh 1: menggunakan fungsi with()
Kita dapat menggunakan fungsi with() berikut untuk mengalikan nilai antara dua kolom bingkai data:
#multiply values between x and y
with(df, x*y)
[1] 6 10 0 35 54 40
Nilai pada kolom x dan kolom y pada bingkai data dikalikan dan hasilnya adalah vektor dengan panjang 6.
Contoh 2: menggunakan fungsi inside()
Kita dapat menggunakan fungsi inside() berikut untuk mengalikan nilai antara dua kolom dalam bingkai data dan menetapkan hasilnya ke kolom baru dalam bingkai data:
#multiply values in x and y and assign results to new column z
within(df, z <- x*y)
X Y Z
1 3 2 6
2 5 2 10
3 5 0 0
4 7 5 35
5 6 9 54
6 10 4 40
Hasil perkaliannya kini disimpan pada kolom baru bernama z .
Penting untuk dicatat bahwa fungsi inside() membuat salinan bingkai data asli tetapi tidak benar-benar mengubah bingkai data asli:
#view original data frame
df
xy
1 3 2
2 5 2
3 5 0
4 7 5
5 6 9
6 10 4
Untuk menyimpan hasil perkalian secara permanen, Anda harus menetapkan hasilnya ke bingkai data baru:
#multiply values in x and y and assign results to new data frame
df_new <- within(df, z <- x*y)
#view new data frame
df_new
X Y Z
1 3 2 6
2 5 2 10
3 5 0 0
4 7 5 35
5 6 9 54
6 10 4 40
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di R:
Bagaimana cara menambahkan kolom ke bingkai data di R
Bagaimana cara menambahkan kolom kosong ke bingkai data di R
Cara mengurutkan bingkai data berdasarkan kolom di R