Mulai sekarangMulai gratis

Ubah data frame menjadi matriks

Salah satu bagian kode yang disorot oleh profvis adalah baris saat kita menghasilkan kemungkinan lemparan dadu dan menyimpan hasilnya dalam sebuah data frame:

df <- data.frame(d1 = sample(1:6, 3, replace = TRUE),
                d2 = sample(1:6, 3, replace = TRUE))

Kita dapat mengoptimalkan kode ini dengan dua perbaikan:

  • Beralih dari data frame ke matriks
  • Menghasilkan 6 lemparan dadu dalam satu langkah

Hasilnya menjadi

m <- matrix(sample(1:6, 6, replace = TRUE), ncol = 2)

Latihan ini merupakan bagian dari kursus

Menulis Kode R yang Efisien

Lihat Kursus

Instruksi latihan

  • Baca dan pahami solusi data frame d().
  • Lengkapi solusi matriks, m().
    • m() harus membuat sebuah matrix dengan 6 elemen dan 2 kolom.
  • Gunakan fungsi microbenchmark() untuk membandingkan waktu eksekusi d() dan m().

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# Load the microbenchmark package
___

# The previous data frame solution is defined
# d() Simulates 6 dices rolls
d <- function() {
  data.frame(
    d1 = sample(1:6, 3, replace = TRUE),
    d2 = sample(1:6, 3, replace = TRUE)
  )
}

# Complete the matrix solution
m <- function() {
  ___(sample(1:6, ___, replace = TRUE), ___)
}

# Use microbenchmark to time m() and d()
___(
 data.frame_solution = d(),
 matrix_solution     = ___
)
Edit dan Jalankan Kode