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