R语言 从矢量创建矩阵

R语言 从矢量创建矩阵

在R编程语言中, 向量 是一个由同质元素组成的基本对象。向量的数据类型可以是整数、双数、字符、逻辑、复数或原始数据。使用 c() 函数可以创建一个向量。

语法

x <- c(val1, val2, .....)

R语言中的向量与C语言中的数组相同,都是用来保存同一类型的多个数据值。向量也可以用来创建矩阵。

通过使用R编程语言中的预定义函数,可以在向量的帮助下创建矩阵。这些函数以向量为参数,同时还有其他几个关于矩阵尺寸等参数。

用于创建矩阵的函数。

  • matrix() 函数
  • cbind() 函数
  • rbind() 函数

matrix()函数

可用的数据存在于一个/多个矢量中,那么 matrix() 函数可以用来创建矩阵,在函数中传递以下参数。

语法

matrix(data, nrow, ncol, byrow, dimnames)

其中

data 是输入向量,代表矩阵中的元素

nrow 指定要创建的行数

ncol 指定要创建的列数

byrow 指定逻辑值。如果为 “true”,矩阵将被按行填充。默认值是FALSE。

dimnames 指定行和列的名称。

例1 :

# defining data in the vector
x <- c(5:16)
  
# defining row names and column names
rown <- c("row_1", "row_2", "row_3")
coln <- c("col_1", "col_2", "col_3", "col_4")
  
# creating matrix
m <- matrix(x, nrow = 3, byrow = TRUE, 
            dimnames = list(rown, coln))
  
# print matrix
print(m)
  
# print class of m
class(m)

输出

      col_1 col_2 col_3 col_4
row_1     5     6     7     8
row_2     9    10    11    12
row_3    13    14    15    16
[1] "matrix"

如果要用多个向量中的数据创建矩阵,那么将创建多个向量的向量并作为参数传递给 matrix() 函数。

例2 :

# defining multiple vectors
x <- c(1:5)
y <- c(11:15)
z <- c(21:25)
  
# creating matrix
m <- matrix(c(x, y, z), ncol = 3)
  
# print matrix
print(m)
  
# print class of m
class(m)

输出

     [, 1] [, 2] [, 3]
[1, ]    1   11   21
[2, ]    2   12   22
[3, ]    3   13   23
[4, ]    4   14   24
[5, ]    5   15   25
[1] "matrix"

cbind()函数

R编程中的 cbind() 函数用于合并向量、数据框或矩阵,数据集的列数和行数应相等,否则,输出将无法理解。
语法

cbind(v1, v2, v3, ....., deparse.level)

其中

v1, v2, v3, …. 代表向量、矩阵或数据帧

deparse.level 用于为非矩阵类参数构建标签。0表示没有标签。默认值是1或2,用于从参数名称中进行标记。

例子

# defining multiple vectors
x <- c(1:5)
y <- c(11:15)
z <- c(21:25)
  
# creating matrix
m <- cbind(x, y, z)
  
# print matrix
print(m)
  
# print class of m
class(m)

输出

     x  y  z
[1, ] 1 11 21
[2, ] 2 12 22
[3, ] 3 13 23
[4, ] 4 14 24
[5, ] 5 15 25
[1] "matrix"

rbind()函数

R编程中的 rbind() 函数用于合并向量、数据框或矩阵,数据集的行数和列数应相等,否则,输出将是不明显的。
语法

rbind(v1, v2, v3, ....., deparse.level)

其中

v1, v2, v3, …. 代表向量、矩阵或数据帧
deparse.level 用于为非矩阵类参数构建标签。0表示没有标签。默认值是1或2,用于从参数名称中进行标记。

例子

# defining multiple vectors
x <- c(1:5)
y <- c(11:15)
z <- c(21:25)
  
# creating matrix
n <- rbind(x, y, z)
  
# print matrix
print(n)
  
# print class of m
class(n)

输出

  [, 1] [, 2] [, 3] [, 4] [, 5]
x    1    2    3    4    5
y   11   12   13   14   15
z   21   22   23   24   25
[1] "matrix"

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程