在R语言中,矩阵(Matrix)是一种二维的数据结构,它由相同类型的元素组成,并具有固定的行数和列数。矩阵可以用于存储和处理二维数据,例如数值数据、统计数据、图像数据等
1. 创建矩阵
1 2 3 4 5 6 7 8 | 单个向量创建矩阵 vec <- c(1, 2, 3, 4, 5, 6) mat <- matrix(vec, nrow = 2, ncol = 3) mat # 输出结果: # [,1] [,2] [,3] # [1,] 1 3 5 # [2,] 2 4 6 |
1 2 3 4 5 6 7 8 9 | 多个向量创建矩阵 vec1 <- c(1, 2, 3) vec2 <- c(4, 5, 6) mat <- matrix(c(vec1, vec2), nrow = 2, ncol = 3) mat # 输出结果: # [,1] [,2] [,3] # [1,] 1 3 5 # [2,] 2 4 6 |
2. 访问矩阵元素
1 2 3 4 5 6 7 8 9 10 11 | > mat Col1 Col2 Col3 Row1 "1" "Hello" "5.5" Row2 "2+3i" "TRUE" "1" > mat[1,2] [1] "Hello" > mat[1,] Col1 Col2 Col3 "1" "Hello" "5.5" |
3. 设置行列名称
1 2 3 4 5 6 7 8 | rownames(mat) <- c( "A" , "B" , "C" ) colnames(mat) <- c( "X" , "Y" , "Z" ) mat # 输出结果: # X Y Z # A 1 4 7 # B 2 5 8 # C 3 6 9 |
4. 切片操作
1 2 3 4 5 | mat[1:2, 2:3] # 输出结果: # Y Z # A 4 7 # B 5 8 |
5. 矩阵运算
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | mat1 <- matrix(1:6, nrow = 2) mat2 <- matrix(7:12, nrow = 2) mat_sum <- mat1 + mat2 mat_sum # 输出结果: # [,1] [,2] # [1,] 8 12 # [2,] 10 14 mat_prod <- mat1 %*% mat2 mat_prod # 输出结果: # [,1] [,2] [,3] # [1,] 58 64 70 # [2,] 79 89 99 mat_trans <- t(mat1) mat_trans # 输出结果: # [,1] [,2] # [1,] 1 4 # [2,] 2 5 # [3,] 3 6 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!