R语言学习——矩阵相关函数
目录
1.diag()函数
2.eigen()函数
3.svd()函数
4.qr()函数
5.dim()函数
6.nrow()函数
7.ncol()函数
8.cbind()函数与rbind()函数
9.as.vector()函数与as.matrix()函数
10.solve()函数
11.aperm()函数
12. apply()函数
1.diag()函数
(1)作用一:求矩阵对角线元素(返回值为一个向量)
t = matrix(1:9,nc = 3);t
diag(t)#返回对角元
结果展示
(2)作用二:把向量转化为对角阵
diag(c(1,2,4,5,8))
结果展示
或者
diag(2,3,4)#生成对角线全为2,大小为3*4的矩阵
结果展示
2.eigen()函数
·eigen英文的中文含义就是“本征”的含义,用于求一个矩阵的特征值和特征向量。、
z = matrix(c(1,0,0,1),nc = 2);z
eigen(z)
结果展示
其中values是特征向量,vectors是特征向量
3.svd()函数
svd()函数可以对矩阵进行奇异值分解
z = matrix(c(0,1,1,0),nc = 2);z
svd(z)
结果展示
4.qr()函数
z = matrix(c(1,0,0,1),nc = 2);z
qr(z)
结果展示
5.dim()函数
dim()函数求矩阵的秩
> z[,1] [,2]
[1,] 1 0
[2,] 0 1
> dim(z)#求矩阵的秩
[1] 2 2
6.nrow()函数
> z[,1] [,2]
[1,] 1 0
[2,] 0 1
> nrow(z)#求矩阵的行数
[1] 2
7.ncol()函数
> z[,1] [,2]
[1,] 1 0
[2,] 0 1
> ncol(z)#求矩阵的列数
[1] 2
8.cbind()函数与rbind()函数
首先创建两个矩阵
> a = matrix(c(1,1,2,0),nc = 2);a[,1] [,2]
[1,] 1 2
[2,] 1 0
> b = matrix(c(1,0,0,1),nc = 2);b[,1] [,2]
[1,] 1 0
[2,] 0 1
运用cbind()函数,把第二个矩阵链接在第一个矩阵的最后一列之后
cbind(a,b)#按列拼接,需要行数相同
结果为
运用rbind()函数,把第二个矩阵链接在第一个矩阵的最后一行之后
rbind(a,b)#按行拼接,需要列数相同
结果为
9.as.vector()函数与as.matrix()函数
(1)as,vector()可以把矩阵转化为向量
a = matrix(1:4,nc = 2);a
as.vector(a)
结果为
(2)as.matrix()可以把矩阵转化为矩阵
as.matrix(1:4)
结果为
10.solve()函数
(1)求矩阵的逆矩阵
a = matrix(c(1,1,2,0),nc = 2);a[,1] [,2]
[1,] 1 2
[2,] 1 0
> solve(a)[,1] [,2]
[1,] 0.0 1.0
[2,] 0.5 -0.5
(2)求 AX = B方程的解
A = matrix(c(1,1,1,0),nc = 2);A[,1] [,2]
[1,] 1 1
[2,] 1 0
> B = c(1,1);B
[1] 1 1
> solve(A,B)
[1] 1 0
11.aperm()函数
aperm()函数能够转换广义矩阵的维度
m = array(1:24,c(2,3,4));m
aperm(m,c(2,3,1))
结果为
m = array(1:24,c(2,3,4));m
, , 1[,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 6, , 2[,1] [,2] [,3]
[1,] 7 9 11
[2,] 8 10 12, , 3[,1] [,2] [,3]
[1,] 13 15 17
[2,] 14 16 18, , 4[,1] [,2] [,3]
[1,] 19 21 23
[2,] 20 22 24> aperm(m,c(2,3,1))
, , 1[,1] [,2] [,3] [,4]
[1,] 1 7 13 19
[2,] 3 9 15 21
[3,] 5 11 17 23, , 2[,1] [,2] [,3] [,4]
[1,] 2 8 14 20
[2,] 4 10 16 22
[3,] 6 12 18 24
aperm()函数的参数c(2,3,1)可以理解为对矩阵的维数进行转换
维数c(2,3,4)转换为c(3,4,2),具体位置的转化为【i,j,k】——>【j,k,i】
12. apply()函数
apply(x # 数组或矩阵MARGIN #应用函数的方向,1行2列 FUN # 应用的函数
)
应用实例:求矩阵每列平均数
> x = matrix(c(1:12),nc = 4);x[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
> apply(x,2,mean)#求每列的平均数
[1] 2 5 8 11
R语言学习——矩阵相关函数相关推荐
- R语言学习笔记(1~3)
R语言学习笔记(1~3) 一.R语言介绍 x <- rnorm(5) 创建了一个名为x的向量对象,它包含5个来自标准正态分布的随机偏差. 1.1 注释 由符号#开头. #函数c()以向量的形式输 ...
- R语言学习手记 (1)
R语言学习手记 (1) 经管的会计和财管都会学数据统计与分析R语言这门课,加上我也有点兴趣,就提前选了这门课,以下的笔记由老师上课的PPT.<R语言编程艺术>和<R语言数据科学> ...
- R语言学习笔记——入门篇:第一章-R语言介绍
R语言 R语言学习笔记--入门篇:第一章-R语言介绍 文章目录 R语言 一.R语言简介 1.1.R语言的应用方向 1.2.R语言的特点 二.R软件的安装 2.1.Windows/Mac 2.2.Lin ...
- R语言学习笔记——高级篇:第十四章-主成分分析和因子分析
R语言 R语言学习笔记--高级篇:第十四章-主成分分析和因子分析 文章目录 R语言 前言 一.R中的主成分和因子分析 二.主成分分析 2.1.判断主成分的个数 2.2.提取主成分 2.3.主成分旋转 ...
- R语言学习笔记——入门篇:第三章-图形初阶
R语言 R语言学习笔记--入门篇:第三章-图形初阶 文章目录 R语言 一.使用图形 1.1.基础绘图函数:plot( ) 1.2.图形控制函数:dev( ) 补充--直方图函数:hist( ) 补充- ...
- R语言学习系列之向量化计算
##R语言学习系列之向量化计算 本文主要讲解R语言向量化计算的原理及方法,希望对初学者能够提供帮助. ##一.向量化 什么是向量化计算呢?其实你可以简单的理解成这样:当我们在使用函数或者定义函数的时候 ...
- r语言c函数怎么用,R语言学习笔记——C#中如何使用R语言setwd()函数
在R语言编译器中,设置当前工作文件夹可以用setwd()函数. > setwd("e://桌面//") > setwd("e:\桌面\") > ...
- predict函数 R_超星尔雅-R语言学习总结(上)
实验一 多元数据的数学表达 实验目的: 1. 会用R语言求矩阵的逆矩阵.特征根和特征向量 2. 对给定的数据会计算频数.频率和累积频率.并绘制直方图 3. 会用R语言编写进行计量数据频数表分析的程序 ...
- R语言学习二——工具的使用
R语言学习(二) 本章学习R语言相关开发工具的使用: 软件下载 软件安装 RStudio的使用 R扩展包的安装与载入 容易遇到的问题 一.软件下载(RStudio) Rstudio下载地址 选择免费版 ...
最新文章
- RequisitePro SQL SERVER数据库的配置
- 利用nginx的fastcgi_cache模块来做缓存
- mysql 新建库在哪找_求助,mysql创建数据库找不到文件在哪问题
- A Combinatorial Simulation
- VS2005工程的Device右边内容为空问题
- 十三、linux编程中目录IO常用编程函数
- Hive的下载安装,以及配置mysql作为元数据库
- VideoLAN,VLC和FFmpeg社区联合开发AV1解码器
- Visual C++ MFC/ATL开发-提高篇
- 查看openssh版本_新版的Reveal如何查看越狱手机APP
- (数据挖掘-入门-2)相似度衡量的方法
- hdu2089不要62(数位dp)
- dnf 跨服 服务器 位置,dnf跨区怎么跨_dnf国服跨区表_快吧游戏
- Going Deeper with Contextual CNN for Hyperspectral Image Classification
- Spring Cloud Alibaba微服务架构实战教程—15最详细的Gateway统一网关
- 七牛云和Github如何使用PicGo设置免费图床
- 用css写平行四边形
- 游戏编程笔记-起步(一)一个简单的游戏-贪吃蛇
- matlab如何采集两路语音信号,基于MATLAB的语音信号采集与处理
- 腾讯云服务器80等端口无法访问