R语言如何创建矩阵
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,今天小编给大家分享一下R语言如何创建矩阵的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧
千家信息网最后更新 2026年11月03日R语言如何创建矩阵
今天小编给大家分享一下R语言如何创建矩阵的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
矩阵
矩阵是其中元素以二维矩形布局布置的R对象, 它们包含相同原子类型的元素。这种数据结构很类似于其它语言中的二维数组,但 R 提供了语言级的矩阵运算支持。
矩阵里的元素可以是数字、符号或数学式。
一个 M x N 的矩阵是一个由 M(row) 行 和 N 列(column)元素排列成的矩形阵列。
矩阵创建
R 语言的矩阵可以使用 matrix() 函数来创建,语法格式如下:
matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE,dimnames = NULL)
参数说明:
data 向量,矩阵的数据
nrow 行数
ncol 列数
byrow 逻辑值,为 FALSE 按列排列,为 TRUE 按行排列
dimname 设置行和列的名称
创建一个数字矩阵"
# byrow 为 TRUE 元素按行排列M <- matrix(c(3:14), nrow = 4, byrow = TRUE)print(M)# Ebyrow 为 FALSE 元素按列排列N <- matrix(c(3:14), nrow = 4, byrow = FALSE)print(N)# 定义行和列的名称rownames = c("row1", "row2", "row3", "row4")colnames = c("col1", "col2", "col3")P <- matrix(c(3:14), nrow = 4, byrow = TRUE, dimnames = list(rownames, colnames))print(P)执行以上代码输出结果为:[,1] [,2] [,3][1,] 3 4 5[2,] 6 7 8[3,] 9 10 11[4,] 12 13 14 [,1] [,2] [,3][1,] 3 7 11[2,] 4 8 12[3,] 5 9 13[4,] 6 10 14 col1 col2 col3row1 3 4 5row2 6 7 8row3 9 10 11row4 12 13 14转置矩阵
R 语言矩阵提供了 t() 函数,可以实现矩阵的行列互换。
例如有个 m 行 n 列的矩阵,使用 t() 函数就能转换为 n 行 m 列的矩阵。
# 创建一个 2 行 3 列的矩阵M = matrix( c(2,6,5,1,10,4), nrow = 2,ncol = 3,byrow = TRUE)print(M) [,1] [,2] [,3][1,] 2 6 5[2,] 1 10 4# 转换为 3 行 2 列的矩阵print(t(M))执行以上代码输出结果为: [,1] [,2] [,3][1,] 2 6 5[2,] 1 10 4 "-----转置后-----" [,1] [,2][1,] 2 1[2,] 6 10[3,] 5 4
矩阵有一个dim属性,内容是两个元素的向量, 两个元素分别为矩阵的行数和列数。dim属性可以用dim()函数访问。如
# 创建一个 2 行 3 列的矩阵M = matrix( c(2,6,5,1,10,4), nrow = 2,ncol = 3,byrow = TRUE)print(M) [,1] [,2] [,3][1,] 2 6 5[2,] 1 10 4dim(A)[1] 2 3
访问矩阵元素
如果想获取矩阵元素,可以通过使用元素的列索引和行索引,类似坐标形式。
# 定义行和列的名称rownames = c("row1", "row2", "row3", "row4")colnames = c("col1", "col2", "col3")# 创建矩阵P <- matrix(c(3:14), nrow = 4, byrow = TRUE, dimnames = list(rownames, colnames))print(P)# 获取第一行第三列的元素print(P[1,3])# 获取第四行第二列的元素print(P[4,2])# 获取第二行print(P[2,])# 获取第三列print(P[,3])执行以上代码输出结果为: col1 col2 col3row1 3 4 5row2 6 7 8row3 9 10 11row4 12 13 14[1] 5[1] 13 col1 col2 col3 6 7 8 row1 row2 row3 row4 5 8 11 14矩阵计算
大小相同(行数列数都相同)的矩阵之间可以相互加减,具体是对每个位置上的元素做加减法。矩阵的乘法则较为复杂。两个矩阵可以相乘,当且仅当第一个矩阵的列数等于第二个矩阵的行数。
矩阵加减法
# 创建 2 行 3 列的矩阵matrix1 <- matrix(c(7, 9, -1, 4, 2, 3), nrow = 2)print(matrix1)matrix2 <- matrix(c(6, 1, 0, 9, 3, 2), nrow = 2)print(matrix2)# 两个矩阵相加result <- matrix1 + matrix2cat("相加结果:","\n")print(result)# 两个矩阵相减result <- matrix1 - matrix2cat("相减结果:","\n")print(result)执行以上代码输出结果为: [,1] [,2] [,3][1,] 7 -1 2[2,] 9 4 3 [,1] [,2] [,3][1,] 6 0 3[2,] 1 9 2相加结果: [,1] [,2] [,3][1,] 13 -1 5[2,] 10 13 5相减结果: [,1] [,2] [,3][1,] 1 -1 -1[2,] 8 -5 1矩阵乘除法
# 创建 2 行 3 列的矩阵matrix1 <- matrix(c(7, 9, -1, 4, 2, 3), nrow = 2)print(matrix1)matrix2 <- matrix(c(6, 1, 0, 9, 3, 2), nrow = 2)print(matrix2)# 两个矩阵相乘result <- matrix1 * matrix2cat("相乘结果:","\n")print(result)# 两个矩阵相除result <- matrix1 / matrix2cat("相除结果:","\n")print(result)执行以上代码输出结果为: [,1] [,2] [,3][1,] 7 -1 2[2,] 9 4 3 [,1] [,2] [,3][1,] 6 0 3[2,] 1 9 2相乘结果: [,1] [,2] [,3][1,] 42 0 6[2,] 9 36 6相除结果: [,1] [,2] [,3][1,] 1.166667 -Inf 0.6666667[2,] 9.000000 0.4444444 1.5000000以上就是"R语言如何创建矩阵"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。
矩阵
元素
结果
两个
语言
代码
输出
函数
知识
篇文章
相同
内容
名称
加减法
向量
属性
数字
数据
矩形
逻辑
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
手磨咖啡
互联网科技股
互联网科技工作委员会毛军
金融科技还是互联网
智能科技公司是互联网公司吗
科技互联网技术
关于新基建和互联网科技
丰台科技园 互联网
亿账通互联网科技
顺玮阁互联网科技
互联网科技的未来发展
无锡溥仪互联网科技有限公司
华脉科技工业互联网产品
科技与互联网哪个更好
苏州铭阳互联网科技有限公司
中国互联网有什么科技
21世纪互联网科技成就
易企秀互联网科技是做什么的
互联网科技企业商标注意事项
上海万顺科技互联网有限公司招聘
涨乐互联网科技
河南真二互联网科技有限公司
齐家互联网科技
亿策互联网科技
北京禾田雨橡互联网科技
互联网科技公司需要的职位
互联网金融科技公司的优势
江苏互联网智能科技产品出厂价
互联网科技和医药行业
科技互联网专业务虚会材料