Как создать пустую матрицу в R (с примерами)


Вы можете использовать следующий синтаксис для создания пустой матрицы определенного размера в R:

#create empty matrix with 10 rows and 3 columns
empty_matrix <- matrix(, nrow= 10 , ncol= 3 )

В следующих примерах показано, как использовать этот синтаксис на практике.

Пример 1: создание пустой матрицы определенного размера

Следующий код показывает, как создать пустую матрицу определенного размера в R:

#create empty matrix with 10 rows and 3 columns
empty_matrix <- matrix(, nrow= 10 , ncol= 3 )

#view empty matrix
empty_matrix

 [,1] [,2] [,3]
 [1,] NA NA NA
 [2,] NA NA NA
 [3,] NA NA NA
 [4,] NA NA NA
 [5,] NA NA NA
 [6,] NA NA NA
 [7,] NA NA NA
 [8,] NA NA NA
 [9,] NA NA NA
[10,] NA NA NA

#view class
class(empty_matrix)

[1] "matrix" "array"

В результате получается матрица с 10 строками и 3 столбцами, в которой каждый элемент матрицы пуст.

Пример 2: Создать матрицу неизвестного размера

Если вы заранее не знаете, каким будет окончательный размер матрицы, вы можете использовать следующий код, чтобы сгенерировать данные для столбцов матрицы и связать каждый столбец вместе с помощью функции cbind() :

#create empty list
my_list <- list()

#add data using for loop
for (i in 1:4) {
 my_list[[i]] <- rnorm(10)
}

#column bind values into a matrix
my_matrix = do. call (cbind, my_list)

#view final matrix
my_matrix

 [,1] [,2] [,3] [,4]
 [1,] 1.3064332 1.18175760 2.1603867 1.2378847
 [2,] 0.8618439 0.66663694 0.1113606 0.2062029
 [3,] -0.4689356 -0.03200797 -1.3872632 1.6531437
 [4,] -0.4664767 -0.79285400 0.3972758 0.1632975
 [5,] 0.5880580 1.05795303 -0.5655543 -0.3557376
 [6,] 0.5412100 -0.32070294 -0.3687303 -1.1778959
 [7,] 0.5073627 -0.24925226 1.0031305 0.6336998
 [8,] 0.8047177 0.10968558 0.3225197 1.6776955
 [9,] 1.5755134 1.40435730 1.8360239 0.5612274
[10,] -0.6430913 0.01173386 0.3181037 -0.8414270

В результате получается матрица из 10 строк и 4 столбцов.

Дополнительные ресурсы

В следующих примерах показано, как создавать другие пустые объекты в R:

Как создать пустой фрейм данных в R
Как создать пустой список в R
Как создать пустой вектор в R