R语言如何创建矩阵
发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,今天小编给大家分享一下R语言如何创建矩阵的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧
千家信息网最后更新 2025年01月24日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安全错误
数据库的锁怎样保障安全
电脑带网络安全模式蓝屏
悦百网络技术有限公司
数据库的数据特点是否有安全性
黄浦区品牌软件开发定制报价表
山东直播软件开发哪家好
网络安全事件 重大
学习网络技术书籍推荐
构建税务系统网络安全
新华三软件开发面经
判断服务器是否支持numa节点
qq代理登陆服务器
高铁网络技术员
dbvis连接数据库实例
qc网络安全方面课题
微信数据库修复时间长
图像并行处理服务器
超星尔雅数据库技术答案
互联网安全和通信网络安全
金蝶数据库备份文件夹
关系数据库的安全性
哈尔滨召开网络安全检查研讨会
移动端pc端软件开发
中央对网络安全高度重视
服务器启动提示dhcp
土地覆盖数据库
坚持总体国家安全观网络安全
java数据库索引生成规则
mc国际版服务器导入自己的地图
服务服务器
网络安全保护中最有效的方式