R -матрицы
Матрицы
Матрица — это двумерный набор данных со столбцами и строками.
Столбец — это вертикальное представление данных, а строка — горизонтальное представление данных.
Матрица может быть создана с помощью matrix()
функции. Укажите параметры nrow
и ncol
, чтобы получить количество строк и столбцов:
Пример
# Create a matrix
thismatrix <- matrix(c(1,2,3,4,5,6), nrow = 3, ncol = 2)
# Print the
matrix
thismatrix
Примечание. Помните, что c()
функция используется для объединения элементов.
Вы также можете создать матрицу со строками:
Пример
thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol
= 2)
thismatrix
Доступ к матричным элементам
Вы можете получить доступ к элементам с помощью [ ]
квадратных скобок. Первая цифра «1» в скобках указывает позицию строки, а вторая цифра «2» указывает позицию столбца:
Пример
thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol
= 2)
thismatrix[1, 2]
Доступ ко всей строке можно получить, если указать запятую после числа в скобках:
Пример
thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol
= 2)
thismatrix[2,]
Доступ ко всему столбцу можно получить, если указать запятую перед числом в скобках:
Пример
thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol
= 2)
thismatrix[,2]
Доступ к более чем одной строке
c()
Если вы используете функцию , можно получить доступ к более чем одной строке :
Пример
thismatrix <- matrix(c("apple", "banana", "cherry", "orange","grape",
"pineapple", "pear", "melon", "fig"), nrow = 3, ncol = 3)
thismatrix[c(1,2),]
Доступ к нескольким столбцам
c()
Если вы используете функцию , можно получить доступ к более чем одному столбцу :
Пример
thismatrix <- matrix(c("apple", "banana", "cherry", "orange","grape",
"pineapple", "pear", "melon", "fig"), nrow = 3, ncol = 3)
thismatrix[,
c(1,2)]
Добавить строки и столбцы
Используйте cbind()
функцию для добавления дополнительных столбцов в матрицу:
Пример
thismatrix <- matrix(c("apple", "banana", "cherry", "orange","grape",
"pineapple", "pear", "melon", "fig"), nrow = 3, ncol = 3)
newmatrix <-
cbind(thismatrix, c("strawberry", "blueberry", "raspberry"))
# Print the new matrix
newmatrix
Примечание . Ячейки в новом столбце должны иметь ту же длину, что и существующая матрица.
Используйте rbind()
функцию для добавления дополнительных строк в матрицу:
Пример
thismatrix <- matrix(c("apple", "banana", "cherry", "orange","grape",
"pineapple", "pear", "melon", "fig"), nrow = 3, ncol = 3)
newmatrix <-
rbind(thismatrix, c("strawberry", "blueberry", "raspberry"))
# Print the new matrix
newmatrix
Примечание . Ячейки в новой строке должны иметь ту же длину, что и существующая матрица.
Удалить строки и столбцы
Используйте c()
функцию для удаления строк и столбцов в матрице:
Пример
thismatrix <- matrix(c("apple", "banana", "cherry", "orange", "mango", "pineapple"),
nrow = 3, ncol =2)
#Remove the first row and the first column
thismatrix <- thismatrix[-c(1), -c(1)]
thismatrix
Проверить, существует ли элемент
Чтобы узнать, присутствует ли указанный элемент в матрице, используйте %in%
оператор:
Пример
Проверяем, присутствует ли в матрице «яблоко»:
thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol
= 2)
"apple" %in% thismatrix
Количество строк и столбцов
Используйте dim()
функцию, чтобы найти количество строк и столбцов в матрице:
Пример
thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol
= 2)
dim(thismatrix)
Длина матрицы
Используйте length()
функцию, чтобы найти размер матрицы:
Пример
thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol
= 2)
length(thismatrix)
Общее количество ячеек в матрице — это количество строк, умноженное на количество столбцов.
В приведенном выше примере: Размер = 2*2 = 4 .
Цикл через матрицу
Вы можете пройти через матрицу, используя for
цикл. Цикл начнется с первой строки, двигаясь вправо:
Пример
Прокрутите элементы матрицы и распечатайте их:
thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol
= 2)
for (rows in 1:nrow(thismatrix)) {
for (columns in
1:ncol(thismatrix)) {
print(thismatrix[rows, columns])
}
}
Объедините две матрицы
Опять же, вы можете использовать функцию rbind()
или cbind()
для объединения двух или более матриц вместе:
Пример
# Combine matrices
Matrix1 <- matrix(c("apple", "banana", "cherry",
"grape"), nrow = 2, ncol = 2)
Matrix2 <- matrix(c("orange", "mango",
"pineapple", "watermelon"), nrow = 2, ncol = 2)
# Adding it as a rows
Matrix_Combined <- rbind(Matrix1, Matrix2)
Matrix_Combined
# Adding it as a columns
Matrix_Combined <- cbind(Matrix1, Matrix2)
Matrix_Combined