博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
matlab基础操作查漏补缺
阅读量:2428 次
发布时间:2019-05-10

本文共 2383 字,大约阅读时间需要 7 分钟。

矩阵

矩阵的元素可以是数值和表达式

mxn称为矩阵
mx1或1xm称为向量
1x1称为标量
复数的表示: m+ni

生成矩阵的命令

zeros(n) 创建一个nxn的0矩阵

ones(n) 创建一个nxx的1矩阵
eye() 创建一个主对角线都是1的矩阵
rand() 所有的值都是[0,1]区间的随机数
randn() 均值为0,均方差σ为1的标准正态分布的随机值
cat()沿指定的维方向串接成高维数矩阵
horzcat()沿水平方向串接成高纬度矩阵
vercat()沿竖直方向串接成高纬度矩阵
repmat(X,m,n) 通过赋值X矩阵和堆叠,形成一个新的矩阵
m 是竖直方向复制的次数
n 是水平方向复制的次数

对数等分向量: logspace(x1,x2,n)

x1: 起始值是10^x1
x2: 终止值是10^x2
n:生成的向量包含n个元素

矩阵信息的获取

size(X,dim) 获取矩阵X的维度信息

dim 如果是1表示竖直方向,如果是2表示水平方向
length(X)是获取矩阵X中长度最长的方向的长度
ndims() 获取矩阵的维度
numel() 获取矩阵的元素个数

transpose(X)是对X的非共轭转置 同 X.’

ctranspose(X) 是对X的共轭转置 同 X’
reshape(X,m,n) 是将X矩阵的元素按列的方向排列重组成mxn的新矩阵
tril(X,k) k = 0 是以主对角线为基准的值,>0是基准以上,<0是基准以下
triu(X,k) k的含义与tril的k 刚好相反
diag(X,k) 抽取主对角线以上第k条对角线作为向量
blkdiag(a,b,c,d,…) 构造以输入元素作为对角线元素的矩阵,其他的补0

稀疏矩阵

由于矩阵中非0元素比较少,直接描述矩阵中非0元素的位置和值,来减少内存的占用和方便观察

例:

0 0
1 0
用系数矩阵描述就是
(2,1) 1

sparse(X) 将正常矩阵X转换为稀疏矩阵

full(A) 将稀疏矩阵A 转换为正常的矩阵表达形式
speye() spones() sprand() sprandn() 对应与正常矩阵的eye(),ones(),rand()和randn()
区别是 spones(S)是将稀疏矩阵S 中非元素全部变成1
sprand()和sprandn()的参数都需要多加一个density(密度)

矩阵操作函数
  • det() 求一个矩阵的行列式 det(A)=0是奇异矩阵(无解或无穷解) det(A)≠0(非奇异阵,唯一解)
  • inv() 求一个矩阵的逆矩阵
  • det() = 0 或趋近于0 ,则称这个矩阵是病态的,即构成的方程组对微小的数据扰动,解的差别会极大
    用范数来衡量这种病态程度,包括1-范数(norm(A,1)),2-范数(norm(A,2)或norm(A)),∞-范数(norm(A,inf))三种常见形式
    条件数的定义是 A的范数与A的逆矩阵的范数的乘积
    1-范数下的条件数cond(A,1) 2-范数下的条件数cond(A,2) ∞-范数下的条件数cond(A,inf)
    条件数越大矩阵越病态,当值趋近于10^16时,为奇异矩阵
  • rank()求一个矩阵的秩
基本的编程命令
  • 从控制台由用户输入数据
    input(‘提示信息’) 输入数值变量
    input(‘提示信息’,‘s’) 输入字符串变量
    格式化输出:
    fprintf(fileID,format,A)
    fileID 一个文件对象(文件对象可以通过fopen(filepath,limit))得到
    limit 有’r’只读 'w’读写 'a’如果没有文件就创建
    fopen()之后一定要在程序结束时fclose(fileID) 把文件从内存写回到磁盘
    format有以下形式:
  • %d 整数
  • %f 小数
  • %e 实数(科学记数法的形式)
  • %s 字符串

A指输出的数据

从excel格式的文件中读入数据的命令

xlsread(‘filepath’,sheet_num);
filepath是.xsl格式文件的存储位置,sheet_num是要读取的sheet的标号

  • 函数
    获得输入参数的个数 nargin(‘function_name’)
    获得函数返回值的个数 nargout(‘function_name’)
    匿名函数的创建(不需要单独写在.m文件中)
    格式:fun = @(argument)expression
数据的统计特征

std() 求传入数据的标准差

cov() 求协方差
mean() 求算数平均值
prod() 求各元素的乘积
var() 求方差
range() 求极差
median() 求中值

参数估计的通用函数

[phat,pci]=mle(‘namedist’,x)
phat为估计值
pci为置信区间
‘namedist’ 是分布函数的名字
x是样本数据

vpa(x,n)

x是符号或数值
n 是将x的结果取n位有效数字
digits(n) 是直接规定运算的结果的有效数字位数

clf命令是清除当前的曲线

[x,y] = ginput(n) 用鼠标从图像中取n个点,结果保存在[x,y]中
figure(n) 创建编号为n的图形窗口
pie(x,explorde) 绘制饼状图
x 是一个向量,explode 是一个由0和1组成的向量,长度和x相同,explode中为1的部分在饼图中会独立出来,为0的部分和剩余部分连接在一起

hidden on 透视被叠压的图形

hidden off 隐藏显示被叠压的图形

绘制地图的命令

file = shaperead(path) % path是.shp文件的路径mapshow(file); title('地图');

转载地址:http://ksjmb.baihongyu.com/

你可能感兴趣的文章
【Java】【Web】JavaWeb相关知识总结 2018-9-17
查看>>
【数据库】突破单一数据库的性能限制——数据库-分库分表总结 2018-9-20
查看>>
【Java】Java常用包的功能 2018-09-21
查看>>
【Java】Map接口主要的四个常用实现类 2018-9-22
查看>>
【Java】HttpServletRequest常用方法2012-9-22
查看>>
【Java】【WEB】XML配置和注解配置的区别 2018-9-23
查看>>
【Java】【WEB】servlet线程不安全问题 2018-9-23
查看>>
【计算机网络】【HTTPS】HTTPS通信原理剖析 2018-9-25
查看>>
【java】优先队列问题2018-9-25
查看>>
【Java】【web】【计算机网络】cookie学习总结 2018-9-28
查看>>
【Java】【编程练习】给定一个整数数组A及它的大小n,同时给定要查找的元素val,请返回它在数组中的位置(从0开始),若不存在该元素,返回-1。若该元素出现多次请返回第一个找到的位置.2018-9
查看>>
【Java】【编程练习】输入一个正整数n,求n!(即阶乘)末尾有多少个 0 ? 2018-9-28
查看>>
【Java】【web】【计算机网络】session学习总结 2018-9-28
查看>>
【计算机网络】【WEB】DNS域名解析过程(十步走) 2018-9-28
查看>>
【java】【web】Web组件之间的跳转方式 2018-9-29
查看>>
【Java】【web】Servlet的三大作用域对象 2018-8-29
查看>>
【转载】【计算机网络】【TCP】当我们说"TCP是可靠协议"时,我们真正表达的是什么?
查看>>
【Java】【JVM】Java中JVM内存管理 2018-10-5
查看>>
【Java】Java 集合学习总结 2018-10-5
查看>>
【Java】Java序列化学习总结 2018-10-5
查看>>