Membuat Matriks dengan matrix()
Bangun matriks dengan menentukan data, nrow, ncol, dan byrow.
Membuat Matriks dengan matrix() adalah pelajaran R Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar R Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus R Academy mencakup 4 pelajaran total.
Apa Itu Matrix dalam R?
matrix dalam R adalah struktur data dua dimensi yang semua elemennya harus memiliki jenis yang sama. Anggaplah sebagai tabel dengan baris dan kolom. Matriks penting untuk aljabar linear, pemrosesan citra, dan komputasi statistik.
# A simple 2x3 matrix
m <- matrix(1:6, nrow = 2, ncol = 3)
cat('A 2x3 matrix:
')
print(m)
cat('Dimensions:', dim(m), '
') # rows colsmatrix(data, nrow, ncol)
Fungsi matrix() mengambil vektor data dan menyusunnya ke dalam baris dan kolom. Secara bawaan, R mengisi matriks kolom demi kolom (urutan kolom utama).
# Filled column by column (default)
m_col <- matrix(1:12, nrow = 3, ncol = 4)
cat('Column-filled 3x4 matrix:
')
print(m_col)
cat('Note: 1,2,3 fill the first COLUMN, not the first row
')byrow = TRUE untuk Pengisian Baris
Menetapkan byrow = TRUE akan mengisi matriks baris demi baris. Ini sering lebih intuitif ketika Anda memandang data berdasarkan baris, seperti pada lembar sebar.
# Filled row by row
m_row <- matrix(1:12, nrow = 3, ncol = 4, byrow = TRUE)
cat('Row-filled 3x4 matrix:
')
print(m_row)
cat('Note: 1,2,3,4 fill the first ROW
')
# Verify byrow
m_check <- matrix(c(1,2,3,4,5,6), nrow = 2, byrow = TRUE)
print(m_check)Matriks dari Vektor Data
Anda dapat membuat matriks yang bermakna dengan memberikan vektor data nyata. R akan menggunakan kembali vektor tersebut jika panjangnya lebih pendek daripada nrow * ncol, tetapi praktik terbaiknya adalah memberikan jumlah elemen yang tepat.
# Exam scores: 3 students, 4 subjects
scores_data <- c(88, 92, 75, 81, # Student 1
79, 85, 90, 73, # Student 2
95, 78, 82, 88) # Student 3
exam_matrix <- matrix(scores_data, nrow = 3, ncol = 4, byrow = TRUE)
rownames(exam_matrix) <- c('Alice', 'Bob', 'Carol')
colnames(exam_matrix) <- c('Math', 'Science', 'English', 'History')
print(exam_matrix)dim() — Memeriksa Dimensi
dim(m) mengembalikan vektor numerik dengan panjang 2: jumlah baris, kemudian jumlah kolom. Anda juga dapat menggunakan nrow(m) dan ncol(m) untuk memperoleh dimensi secara terpisah.
m <- matrix(1:20, nrow = 4, ncol = 5)
cat('dim(m):', dim(m), '
') # 4 5
cat('nrow(m):', nrow(m), '
') # 4
cat('ncol(m):', ncol(m), '
') # 5
cat('Total elements:', length(m), '
') # 20is.matrix() — Memeriksa Jenis
is.matrix(x) mengembalikan TRUE jika x adalah matriks. Ini berguna untuk memvalidasi masukan fungsi. Perhatikan bahwa matriks juga merupakan larik (is.array() juga mengembalikan TRUE).
m <- matrix(1:4, nrow = 2)
v <- c(1, 2, 3, 4)
cat('is.matrix(m):', is.matrix(m), '
') # TRUE
cat('is.matrix(v):', is.matrix(v), '
') # FALSE
cat('is.array(m): ', is.array(m), '
') # TRUE (matrix IS an array)
cat('class(m): ', class(m), '
')Matriks Nol dan Matriks Identitas
Anda dapat membuat matriks khusus dengan menggunakan kembali satu nilai. matrix(0, n, n) membuat matriks nol; diag(n) membuat matriks identitas n x n (angka 1 pada diagonal dan angka 0 di tempat lain).
# Zero matrix 3x3
zero_mat <- matrix(0, nrow = 3, ncol = 3)
cat('Zero matrix:
')
print(zero_mat)
# Identity matrix 3x3
identity_mat <- diag(3)
cat('Identity matrix:
')
print(identity_mat)Matriks dari Nilai yang Digunakan Kembali
Jika vektor data lebih pendek daripada nrow * ncol, R akan menggunakan kembali vektor tersebut (mengulangnya dari awal). R memberikan peringatan jika panjang vektor tidak dapat membagi ukuran matriks secara merata.
# Recycle a 2-element vector into a 4x4 matrix
alternate <- matrix(c(0, 1), nrow = 4, ncol = 4)
cat('Recycled 0,1 into 4x4:
')
print(alternate)
# Checkerboard effect: fills column by columnHanya Memberikan nrow atau ncol
Anda hanya perlu memberikan salah satu dari nrow atau ncol—R akan menghitung yang lainnya secara otomatis berdasarkan panjang data. Jika data tidak dapat dibagi secara merata, R akan menggunakan kembali data tersebut dan menampilkan peringatan.
# Only specify nrow, R infers ncol
m1 <- matrix(1:12, nrow = 3)
cat('nrow=3 only, inferred ncol =', ncol(m1), '
')
print(m1)
# Only specify ncol, R infers nrow
m2 <- matrix(1:12, ncol = 4)
cat('ncol=4 only, inferred nrow =', nrow(m2), '
')Matriks Karakter
Matriks tidak terbatas pada angka—Anda dapat membuat matriks karakter untuk data kategorikal, papan permainan, atau kisi pencarian. Namun, semua elemen tetap harus memiliki jenis yang sama.
# Tic-tac-toe board
board <- matrix(c('X', 'O', 'X',
'O', 'X', 'O',
'O', 'X', 'O'),
nrow = 3, ncol = 3, byrow = TRUE)
cat('Tic-Tac-Toe board:
')
print(board)
cat('Type:', class(board), '
')Ringkasan: Membuat Matriks
Berikut ringkasan cara membuat matriks dalam R:
matrix(data, nrow, ncol)— pembuatan dasar (secara bawaan diisi berdasarkan kolom)matrix(data, nrow, ncol, byrow=TRUE)— mengisi baris demi barismatrix(0, n, m)— matriks noldiag(n)— matriks identitasdim(m),nrow(m),ncol(m)— memeriksa dimensiis.matrix(m)— memeriksa jenis
# Quick creation reference
cat('3x2 column-fill:
'); print(matrix(1:6, 3, 2))
cat('3x2 row-fill:
'); print(matrix(1:6, 3, 2, byrow=TRUE))
cat('2x2 zeros:
'); print(matrix(0, 2, 2))
cat('3x3 identity:
'); print(diag(3))Pemeriksaan Singkat
Secara default (tanpa byrow = TRUE), dalam urutan apa matrix() mengisi elemen?
Ringkasan: Membuat Matrix
Sangat baik! Hal-hal penting dari pelajaran ini:
matrix(data, nrow, ncol)membuat sebuah matrix — secara default, data diisi kolom demi kolom- Gunakan
byrow = TRUEuntuk mengisi baris demi baris - Anda hanya perlu menentukan
nrowATAUncol— R akan menyimpulkan yang lainnya dim(m)mengembalikanc(rows, cols);nrow()danncol()memberikan jumlah masing-masingis.matrix()menguji apakah suatu objek merupakan matrixmatrix(0, n, n)membuat matrix nol;diag(n)membuat matrix identitas
# Full workflow: create, inspect, verify
m <- matrix(seq(2, 24, by = 2), nrow = 4, ncol = 3, byrow = TRUE)
cat('Even numbers matrix:
')
print(m)
cat('Rows:', nrow(m), '| Cols:', ncol(m), '| Elements:', length(m), '
')Pertanyaan yang Sering Diajukan
Apakah pelajaran “Membuat Matriks dengan matrix()” gratis?
Ya — teks lengkap “Membuat Matriks dengan matrix()” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus R Academy, upgrade ke CoddyKit PRO. Kursus R Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Membuat Matriks dengan matrix()”?
Bangun matriks dengan menentukan data, nrow, ncol, dan byrow. Kamu berlatih R Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai R Academy?
Tidak diperlukan pengalaman sebelumnya. R Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Membuat Matriks dengan matrix()” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran R Academy ini?
Ya. Setiap pelajaran R Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Membuat Matriks dengan matrix()
- Pengindeksan dan Subset Matriks
- Aritmetika dan Operasi Matriks
- Mentransposisi dan Mengubah Bentuk Matriks