R Mảng
Mảng
So với ma trận, mảng có thể có nhiều hơn hai chiều.
Chúng ta có thể sử dụng array()
hàm để tạo một mảng và dim
tham số để chỉ định kích thước:
Thí dụ
# An array with one dimension with values ranging from 1 to 24
thisarray <-
c(1:24)
thisarray
# An array with more than one dimension
multiarray <- array(thisarray, dim = c(4, 3, 2))
multiarray
Giải thích ví dụ
Trong ví dụ trên, chúng ta tạo một mảng với các giá trị từ 1 đến 24.
Làm thế nào để dim=c(4,3,2)
làm việc?
Số đầu tiên và số thứ hai trong ngoặc chỉ định số lượng hàng và cột.
Số cuối cùng trong dấu ngoặc chỉ định bao nhiêu thứ nguyên mà chúng ta muốn.
Lưu ý: Mảng chỉ có thể có một kiểu dữ liệu.
Truy cập các mục trong mảng
Bạn có thể truy cập các phần tử của mảng bằng cách tham chiếu đến vị trí chỉ mục. Bạn có thể sử dụng []
dấu ngoặc để truy cập các phần tử mong muốn từ một mảng:
Thí dụ
thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))
multiarray[2, 3, 2]
Cú pháp như sau: mảng [vị trí hàng, vị trí cột, mức ma trận]
Bạn cũng có thể truy cập toàn bộ hàng hoặc cột từ ma trận trong một mảng, bằng cách sử dụng c()
hàm:
Thí dụ
thisarray <- c(1:24)
# Access all the items from the first row from
matrix one
multiarray <- array(thisarray, dim = c(4, 3, 2))
multiarray[c(1),,1]
# Access all the items from the first column
from matrix one
multiarray <- array(thisarray, dim = c(4, 3, 2))
multiarray[,c(1),1]
Dấu phẩy (,) trước c () có nghĩa là chúng ta muốn truy cập cột.
Dấu phẩy (,) sau c () có nghĩa là chúng ta muốn truy cập hàng.
Kiểm tra xem một mặt hàng có tồn tại không
Để tìm hiểu xem một mục được chỉ định có xuất hiện trong một mảng hay không, hãy sử dụng %in%
toán tử:
Thí dụ
Kiểm tra xem giá trị "2" có trong mảng hay không:
thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))
2 %in% multiarray
Số lượng hàng và cột
Sử dụng dim()
hàm để tìm số lượng hàng và cột trong một mảng:
Thí dụ
thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))
dim(multiarray)
Độ dài mảng
Sử dụng length()
hàm để tìm kích thước của một mảng:
Thí dụ
thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))
length(multiarray)
Vòng qua một mảng
Bạn có thể lặp qua các mục mảng bằng cách sử dụng một for
vòng lặp:
Thí dụ
thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))
for(x in multiarray){
print(x)
}