Cara menggunakan fungsi scan di r (dengan contoh)


Anda dapat menggunakan fungsi swep() di R untuk melakukan operasi tertentu pada baris atau kolom matriks.

Fungsi ini menggunakan sintaks dasar berikut:

 sweep(x, MARGIN, STATS, FUN)

Emas:

  • x : Nama matriks
  • MARGIN : Margin untuk menjalankan fungsi (1=baris, 2=kolom)
  • STATS : Nilai yang akan digunakan dalam fungsi
  • FUN : Fungsi yang akan dilakukan

Contoh berikut menunjukkan cara menggunakan fungsi swep() dalam berbagai skenario di R.

Contoh 1: Gunakan swep() untuk melakukan operasi pada baris

Kode berikut menunjukkan cara menggunakan fungsi swep() untuk menambahkan angka tertentu ke nilai di setiap baris matriks:

 #define matrix
mat <- matrix(1:15, nrow= 5 )

#view matrix
mast

     [,1] [,2] [,3]
[1,] 1 6 11
[2,] 2 7 12
[3,] 3 8 13
[4,] 4 9 14
[5,] 5 10 15

#add specific numbers to each row
sweep(mat, 1 , c(5, 10, 15, 20, 25), " + ")

     [,1] [,2] [,3]
[1,] 6 11 16
[2,] 12 17 22
[3,] 18 23 28
[4,] 24 29 34
[5,] 30 35 40

Berikut cara kerja fungsi swep() dalam skenario ini:

  • 5 ditambahkan ke setiap nilai di baris pertama.
  • 10 ditambahkan ke setiap nilai di baris kedua.
  • 15 ditambahkan ke setiap nilai di baris ketiga.
  • 20 ditambahkan ke setiap nilai di baris keempat.
  • 25 ditambahkan ke setiap nilai di baris kelima.

Perhatikan bahwa dalam contoh ini kita menggunakan penjumlahan (+) sebagai operasi matematika yang harus dilakukan, namun kita dapat memilih untuk menggunakan operasi yang berbeda.

Misalnya kode berikut menunjukkan cara mengalikan nilai pada setiap baris dengan angka tertentu:

 #define matrix
mat <- matrix(1:15, nrow= 5 )

#view matrix
mast

     [,1] [,2] [,3]
[1,] 1 6 11
[2,] 2 7 12
[3,] 3 8 13
[4,] 4 9 14
[5,] 5 10 15

#multiply values in each row by certain amount
sweep(mat, 1 , c(.5, 1, 2, 4, 6), " * ")

     [,1] [,2] [,3]
[1,] 0.5 3 5.5
[2,] 2.0 7 12.0
[3,] 6.0 16 26.0
[4,] 16.0 36 56.0
[5,] 30.0 60 90.0

Contoh 2: Gunakan scanning() untuk melakukan operasi pada kolom

Kode berikut menunjukkan cara menggunakan fungsi swep() untuk menambahkan angka tertentu ke nilai di setiap kolom matriks:

 #define matrix
mat <- matrix(1:15, nrow= 5 )

#view matrix
mast

     [,1] [,2] [,3]
[1,] 1 6 11
[2,] 2 7 12
[3,] 3 8 13
[4,] 4 9 14
[5,] 5 10 15

#add specific numbers to each column
sweep(mat, 2 , c(5, 10, 15), " + ")

     [,1] [,2] [,3]
[1,] 6 16 26
[2,] 7 17 27
[3,] 8 18 28
[4,] 9 19 29
[5,] 10 20 30

Berikut cara kerja fungsi swep() dalam skenario ini:

  • 5 ditambahkan ke setiap nilai di kolom pertama.
  • 10 ditambahkan ke setiap nilai di kolom kedua.
  • 15 ditambahkan ke setiap nilai di kolom ketiga.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan operasi umum lainnya di R:

Cara membuat matriks kosong di R
Cara mengonversi kerangka data menjadi matriks di R
Cara memplot baris matriks di R

Tambahkan komentar

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