Untuk Loop in R dengan Contoh List dan Matrix

Daftar Isi:

Anonim

Perulangan for sangat berharga ketika kita perlu mengulang daftar elemen atau rentang angka. Loop dapat digunakan untuk mengulang daftar, bingkai data, vektor, matriks, atau objek lainnya. Kawat gigi dan braket persegi wajib diisi.

Dalam tutorial ini, kita akan belajar,

  • Untuk Sintaks dan Contoh Loop
  • Untuk Ulangi daftar
  • Untuk Ulangi matriks

Untuk Sintaks dan Contoh Loop

For (i in vector) {Exp}

Sini,

R akan mengulang semua variabel dalam vektor dan melakukan komputasi yang tertulis di dalam exp.

Mari kita lihat beberapa contoh.

Contoh 1 : Kami mengulangi semua elemen vektor dan mencetak nilai saat ini.

# Create fruit vectorfruit <- c('Apple', 'Orange', 'Passion fruit', 'Banana')# Create the for statementfor ( i in fruit){print(i)}

Keluaran:

## [1] "Apple"## [1] "Orange"## [1] "Passion fruit"## [1] "Banana"

Contoh 2 : membuat fungsi non-linier menggunakan polinomial x antara 1 dan 4 dan kami menyimpannya dalam daftar

# Create an empty listlist <- c()# Create a for statement to populate the listfor (i in seq(1, 4, by=1)) {list[[i]] <- i*i}print(list)

Keluaran:

## [1] 1 4 9 16 

Perulangan for sangat berharga untuk tugas pembelajaran mesin. Setelah melatih model, kita perlu mengatur model agar tidak terlalu pas. Regularisasi adalah tugas yang sangat membosankan karena kita perlu menemukan nilai yang meminimalkan fungsi kerugian. Untuk membantu kami mendeteksi nilai-nilai tersebut, kami dapat menggunakan perulangan for untuk melakukan iterasi pada rentang nilai dan menentukan kandidat terbaik.

Untuk Ulangi daftar

Memutar ulang daftar semudah dan senyaman mengulang vektor. Mari kita lihat contohnya

# Create a list with three vectorsfruit <- list(Basket = c('Apple', 'Orange', 'Passion fruit', 'Banana'),Money = c(10, 12, 15), purchase = FALSE)for (p in fruit){print(p)}

Keluaran:

## [1] "Apple" "Orange" "Passion fruit" "Banana"## [1] 10 12 15## [1] FALSE

Untuk Ulangi matriks

Matriks memiliki 2 dimensi, baris dan kolom. Untuk melakukan iterasi pada matriks, kita harus mendefinisikan dua perulangan for, yaitu satu untuk baris dan satu lagi untuk kolom.

# Create a matrixmat <- matrix(data = seq(10, 20, by=1), nrow = 6, ncol =2)# Create the loop with r and c to iterate over the matrixfor (r in 1:nrow(mat))for (c in 1:ncol(mat))print(paste("Row", r, "and column",c, "have values of", mat[r,c]))

Keluaran:

## [1] "Row 1 and column 1 have values of 10"## [1] "Row 1 and column 2 have values of 16"## [1] "Row 2 and column 1 have values of 11"## [1] "Row 2 and column 2 have values of 17"## [1] "Row 3 and column 1 have values of 12"## [1] "Row 3 and column 2 have values of 18"## [1] "Row 4 and column 1 have values of 13"## [1] "Row 4 and column 2 have values of 19"## [1] "Row 5 and column 1 have values of 14"## [1] "Row 5 and column 2 have values of 20"## [1] "Row 6 and column 1 have values of 15"## [1] "Row 6 and column 2 have values of 10"