R语言 创建零的矩阵
R编程语言为我们提供了多种方法来创建一个矩阵,并以这样的方式填充它,使所有的元素值都等于0。
使用matrix()方法
R语言中内置的matrix()方法可以用来创建一个具有给定数值集的矩阵,即n x m维度,并以指定的数值初始化它。所有的元素都以相同的值进行初始化。如果没有指定m或n参数,将尝试从数据的长度和其他参数中推断出缺失的值。如果这两个参数都没有给出,那么就会返回一个单列矩阵作为输出。这个矩阵可以存储在一个变量中,然后可以访问和操作其元素。
语法: matrix(0, n, m)
参数
- 0 – 用来初始化矩阵的值
- n – 行的数量
- m – 列的数量
返回类型: 一个矩阵或零的标量
例子
# initializing a matrix of 0s of 2*3 dimensions
mat = matrix(0, 2, 3)
# print the matrix
print (mat)
输出
[,1] [,2] [,3]
[1,] 0 0 0
[2,] 0 0 0
使用replicate()方法
replicate()方法用于创建方法vec的第二个参数的副本,将其追加n次。它重复应用同一个指定的向量,形成一个二维矩阵。该方法属于R中使用的apply函数集,并使用它作为其父类或基类。第二个参数是通过包围在numeric(int)值内指定的。另外,numeric方法创建一个指定长度的实数向量。该向量的元素在数值应用中都等于0。
语法: replicate ( n , numeric (m) )
参数:
- n – 行的数量
- numeric(m) – 矩阵中的列数,作为一个数字参数指定。
返回类型: 一个矩阵或零的标量
例子
# initializing a matrix of 0s of 2*3 dimensions
mat = replicate( 6, numeric(3) )
# print the matrix
print ("Matrix : ")
print (mat)
输出
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 0 0 0 0 0 0
[2,] 0 0 0 0 0 0
[3,] 0 0 0 0 0 0
使用rep()方法
R中的rep()方法可以用来创建一个单行矩阵,它创建的列数相当于该方法第二个参数中的值。第一个参数,指定了要重复和堆叠y次的向量,在本例中是0,我们可以指定0L而不是0。
语法: Rep (0 , y)
参数: y – 矩阵中的列数
返回类型: 零的单行矩阵
例子
print ("Matrix : ")
# create a matrix of single 0 and 10 columns
rep(0, 10)
输出
[1] “Matrix:”
[1] 0 0 0 0 0 0 0 0 0 0
使用Numeric()和integer()方法
还有其他一些方法,如numeric()或integer(),可以用来创建一个零的矢量。所有这些方法都需要一个参数length,指定要组合的零的数量。 integer() 和 numeric() 方法的行为几乎相同。
语法
numeric(size)
integer(size)
例子
print ("Matrix using numeric() method:")
# create a matrix of single 0 and 8 columns
numeric (8)
print ("Matrix using integer() method:")
# create a matrix of single 0 and 5 columns
integer (5)
输出
[1] “Matrix using numeric() method:”
[1] 0 0 0 0 0 0 0 0
[1] “Matrix using integer() method:”
[1] 0 0 0 0 0