R语言的矩阵在数据操作的工作中十分的方便,也十分实用,给批量操作提供了简便的工具:

以下是整理的上课笔记:

#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#矩阵的建立:matrix(data=x,nrow=m,ncol=n,byrow=TRUE)
#x -> 元素的向量; n -> 列数; m -> 行数;
#byrow -> 决定了元素是否按行排列(TRUE:按行排列;FALSE:按列排列)#第一种建立
m<-matrix(1:10,nrow=3,ncol=5,byrow=TRUE)
m
#索引
m[1,3]  #精准查找,精确到m行,n列
m[1,]   #按行查找
m[,2]   #按列查找#第二种建立,“先定义,后填充”
m<-matrix(0,nrow=5,ncol=5,byrow=TRUE)
m
m[1,]<-c(1:5) #按行填充元素
m[,2]<-c(1:5) #按列填充元素
m[3,3]<-9     #精却位置填充元素
m[1:2,2:3]<-c(5:8)  #按区块填充,案列排列元素#矩阵的操作
#矩阵的转置,t(矩阵名)
m2<-t(m)+m
m2
#对称矩阵的特征根、特征向量: eigen(矩阵名)
eigen(m2)
#生成下三角矩阵(数学角度)
m<-matrix(0,nrow=5,ncol=5)
for(i in 1:5){m[i,i]<-(1+i)/2*i   #对角线位置的数值是梯形的面积值for(j in 1:i){m[i,i-j]<-m[i,i]-j   #从对角线位置,向前依次减少‘1’}
};m;
#生成下三角矩阵(编程语言角度)
m<-matrix(0,nrow=5,ncol=5)
h<-1
for(i in 1:5){for(j in 1:i){m[i,j]<-hh<-h+1}
};m;#查矩阵的维数,dim(m)
dim(m)
dim(m)<-c(5,4)  #矩阵大小(元素个数)不变,重置矩阵的维数(i行,j列 的矩阵),dim(m)<-c(i,j)
#¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥
x<-sample(1:50,16)
y<-sample(1:50,16)
z<-sample(1:50,25)
m1<-matrix(x,nrow=4,ncol=4,byrow=T)
m2<-matrix(y,nrow=4,ncol=4,byrow=T)
m3<-matrix(z,nrow=5,ncol=5,byrow=T)
m1;m2;m3;
#矩阵的运算+、-、%*%、%/%
m1+m2;m1-m2;   #矩阵中的对应元素相加、减
m1+m3;m1-m3;   #报错:两个元素个数和排列不对应的矩阵不能相加、减2*m1        ##数乘:矩阵每个元素都乘以一个常数
m1%*%m2 #矩阵乘法
m1*m2       #矩阵对应元素相乘#求逆(通过解方程方式):solve(m) 求m矩阵的逆
solve(m1)#矩阵转置 t(m)
t(m1)#去矩阵对角线 diag(m)
diag(m1)#求矩阵(必须是方阵)行列式  det(m)
det(m1)
#&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&#矩阵的合并
#1、按行合并rbind(x,y):x在上,y在下
#2、按列合并cbind(x,y):x在左,y在右x<-matrix(1:25,nrow=5,ncol=5,byrow=T)
y<-matrix(1:10,nrow=2,ncol=5,byrow=T)
rbind(x,y)
cbind(x,t(y))#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#apply(m,1 or 2,f,farge)  m为被操作矩阵,1 表示对行进行操作,2 表示对列进行操作
#f 是操作函数,farge 是操作函数的参数
apply(x,1,sum)
apply(x,2,sum)
apply(x,1,mean)#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#对矩阵的行和列进行命名
rownames(x)<-c('a','b','c','d','e')    #对行命名
colnames(x)<-c('A','B','C','D','E')    #对列命名
dimnames(x) #查看行和列的名字#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#例题:列出一个(0,1)矩阵;判断每一行1的个数是否大于行的长度的一半,若大于,记为“张”。
x<-rep(c(0,1),length=1000)
y<-sample(x,400)
M<-matrix(y,nrow=20,ncol=20)mydef<-function(x){n<-0ifelse(sum(x)>length(x)/2,n<-'张',n<-'0')n
}a<-apply(M,1,mydef)
a#—————————————————————————————————————

R语言基础学习:矩阵及矩阵的基础操作相关推荐

  1. R语言使用单个向量创建矩阵数据、通过byrow参数指定从向量转化为矩阵的过程中的数据排布方式

    R语言使用单个向量创建矩阵数据.通过byrow参数指定从向量转化为矩阵的过程中的数据排布方式 目录 R语言使用单个向量创建矩阵数据.通过byrow参数指定从向量转化为矩阵的过程中的数据排布方式 R语言 ...

  2. R语言自定义多分类混淆矩阵可视化函数(mutlti class confusion matrix)、R语言多分类混淆矩阵可视化

    R语言自定义多分类混淆矩阵可视化函数(mutlti class confusion matrix).R语言多分类混淆矩阵可视化 目录

  3. R语言使用colSums函数对矩阵或者数据框数据的列求和、使用rbind函数行列和向量附加到原始矩阵数据尾部

    R语言使用colSums函数对矩阵或者数据框数据的列求和.使用rbind函数行列和向量附加到原始矩阵数据尾部 目录

  4. 白话空间统计之二十五:空间权重矩阵(四)R语言中的空间权重矩阵(2)

    上一篇,讲了R语言中的空间权重矩阵的结构,这一节讲讲R语言里面空间权重矩阵的自定义. 与ArcGIS自定义空间权重矩阵一样,R语言的空间权重矩阵如果纯粹从零开始自定义生成,是非常麻烦的事情,所以我们一 ...

  5. R语言可视化热力图:相关性矩阵热力图、数据热力图实战

    R语言可视化热力图:相关性矩阵热力图.数据热力图实战 目录 R语言可视化热力图:相关性矩阵热力图.数据热力图实战

  6. moran指数 r语言_白话空间统计之二十五:空间权重矩阵(四)R语言中的空间权重矩阵(2):不同空间关系对莫兰指数的影响...

    原标题:白话空间统计之二十五:空间权重矩阵(四)R语言中的空间权重矩阵(2):不同空间关系对莫兰指数的影响 上一篇,讲了R语言中的空间权重矩阵的结构,这一节讲讲R语言里面空间权重矩阵的自定义. 与Ar ...

  7. R语言可视化学习笔记之ggridges包绘制山峦图

    作者:严涛 浙江大学作物遗传育种在读研究生(生物信息学方向)伪码农,R语言爱好者,爱开源. 严涛老师的绘图教程还有: gganimate |诺奖文章里面的动图绘制教程来了!! ggplot2学习笔记之 ...

  8. R语言小白学习笔记13—基本统计

    R语言小白学习笔记13-基本统计 笔记链接 学习笔记13-基本统计 13.1 概括性统计量 13.2 相关系数和协方差 13.3 t-检验 13.3.1 单样本t检验 13.3.2 两样本t检验 13 ...

  9. R语言可视化学习笔记之相关矩阵可视化包ggcorrplot

    本文转载自"R语言中文社区",己获授权. 作者简介Introduction taoyan:伪码农,R语言爱好者,爱开源. 个人博客: https://ytlogos.github. ...

  10. R语言数据处理学习记录--使用linkET包完成mental test

    R语言数据处理学习记录–使用linkET包完成mental test 注:本文仅作为自己的学习记录以备复习查阅 一 简单介绍一下 这个包依旧是来自于GitHub上,作者给出的介绍:linkET的目标是 ...

最新文章

  1. c++框架有哪些_Java Mybatis框架入门教程_v20200726
  2. uboot 如何设置网关地址_两种网络地址段,如何设置内网和外网一起上?
  3. mysql 解除安全模式
  4. 4.从单应矩阵中分离得到内参和外参(需要拍摄n=3张标定图片)
  5. RocketMQ专栏
  6. STM32之窗口看门狗例程
  7. chrome地址栏命令
  8. 【kafka】查看消费组报错 Executing consumer group command failed due to Request METADATA failed on brokers Lis
  9. mysql判断是日期是第几周
  10. 本科计算机软件类毕业论文写作那些事
  11. 计算机网络怎么算默认网关,ip地址子网掩码计算器_默认网关怎么计算_ip 掩码 网关的关系...
  12. XML 转 JSON
  13. 计算方法-常微分方程初值问题的数值解法
  14. iOS 5 故事板进阶(1)
  15. linux iio 设备驱动,Linux设备驱动之IIO子系统——IIO框架数据读取
  16. 【UEFI基础】Protocol介绍
  17. 国庆假期看了一系列图像分割Unet、DeepLabv3+改进期刊论文,总结了一些改进创新的技巧
  18. Cookie,sessionstorage,localstorage,Token ,JWT,session的区别
  19. 【差分约束】SCOI2011糖果
  20. pycharm调试服务器代码

热门文章

  1. resent = msg.get_all('Resent-Date') AttributeError: 'str' object has no attribute 'get_all'
  2. 软件开发基于JavaScript实现快速转换文本语言
  3. java 监控 emc 存储_EMC存储VNX5500搜集日志
  4. pycharm 总弹出modify setUp的解决办法
  5. 用AI给黑白照片上色,复现记忆中的旧时光
  6. 宇视摄像机码流类型定码率和变码率的区别?
  7. RDKit|分子指纹提取、相似性比较及应用
  8. 零信任安全在攻防演练中的“防御”之道
  9. C语言中将数字转换为字符串的方法
  10. 谷歌浏览器记住密码功能 input框黄色背景