我是靠谱客的博主 可靠草莓,最近开发中收集的这篇文章主要介绍matlab之常用命令整理(持续更新中...)信号处理数值计算科学计算系统操作文件操作画图,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一些自己工作中遇到的问题. 希望对大家也有帮助.

  • 信号处理
      • alignsignals 求两个信号的delay, 并且对齐信号
      • buffer 可以把信号切分成不同segment组成矩阵
      • dsp.SampleRateConverter 改变采样率
      • finddelay 求两个信号的delay
      • findpeaks 检测峰值
      • findsignal 在一段信号里寻找最相似的某一片段
      • edr 求两个信号的编辑距离
      • pentropy求信号的谱熵
      • sgolayfilt SG滤波器
  • 数值计算
      • 求cdf
      • atan2 / atan2d 四象限反正切
      • diff 差分
      • discretize 小数离散化
      • lsqnonlin
      • nchoosek n个里面选k个组合
      • perms 全排列
      • rand 生成[0,1]随机小数
      • randi 生成[1,n]的随机整数
      • randperm 随机打乱一个序列
      • repmat 复制矩阵
      • sort 对向量排序
      • strcat连接两个字符串
      • strcmp 比较字符串是否相等
      • unique去掉重复
      • 集合交并补
  • 科学计算
      • confusionmat
      • cvpartition
      • deal 输入分发到输出
      • ismissing 查找缺失值
      • 拟合曲线
      • Squeeze
      • tabulate 统计数量与比例
  • 系统操作
      • beep
      • clear
      • clc
      • clf
      • dbstop if error
      • quit 推出matlab
      • sound 发出声音
      • waitbar 显示进度条
      • warndlg 创建警告窗
      • prefdir
  • 文件操作
      • fileparts 求信号的目录, 文件名, 扩展名
      • mfilename
  • 画图
      • axis ij
      • confusionchart
      • linkaxes
      • 上标下标斜体
      • yyaxis right
      • zoom on

信号处理

alignsignals 求两个信号的delay, 并且对齐信号

buffer 可以把信号切分成不同segment组成矩阵

dsp.SampleRateConverter 改变采样率

finddelay 求两个信号的delay

findpeaks 检测峰值

可以加上很多条件限制,比如峰值大小、间隔距离等等,对含有噪声的信号很有用。

findsignal 在一段信号里寻找最相似的某一片段

基于某一种距离量度

edr 求两个信号的编辑距离

pentropy求信号的谱熵

pentropy可以方便的求谱熵,不用自己再去编写FFT了。

sgolayfilt SG滤波器

适用于噪声频带很宽的信号平滑。也叫滑动最小二乘滤波器

数值计算

求cdf

ecdf(A)

atan2 / atan2d 四象限反正切

atan求出来的结果可能会造成第一象限和第三象限混淆的情况, 所以可以使用atan2

diff 差分

diff可以做差分,也就是离散序列的求导。
差分往往可以用在平滑信号,让不平稳的信号经过多次差分来变得平稳(即在某一值附近波动),也可以利用这种特性进行奇异值检测。

discretize 小数离散化

discretize(r,5) 把小数向量离散化到均匀的5个bin里. 比四舍五入对端点的值要友好, 详情见这里.

lsqnonlin

解决非线性拟合问题.这里
有一个例子.

nchoosek n个里面选k个组合

C = nchoosek(v,k). v是数组. C是返回的组合

perms 全排列

生成一个向量的全排列
perms(A)

rand 生成[0,1]随机小数

rand(3,4) 生成一个3X4的随机数矩阵.

randi 生成[1,n]的随机整数

randi(5,100) 生成100个1到5的随机整数.

randperm 随机打乱一个序列

如randperm(8),即随机产生一个1-8的排列。
如果想打乱一个向量a,可以使用命令a(randperm(length(a)))
randperm(n,k) 从n个数中取出由K个数组成的随机序列

repmat 复制矩阵

repmat(A,[2 3]) 把A复制为原来的[2,3]倍

sort 对向量排序

sort(A),升序排列。
sort(A,‘descend’)降序排列

strcat连接两个字符串

连接两个字符串

strcmp 比较字符串是否相等

strcmp既可以用于两个字符串比较,也可以用于一个字符串向量与另一个字符串比较

unique去掉重复

unique(a) 去掉a中的重复值

集合交并补

  • 交集 intersect(A, B)
  • 并集 union(A, B)
  • 补集 setdiff(A, B)

科学计算

confusionmat

计算混淆矩阵

cvpartition

  • 划分训练集与数据集

deal 输入分发到输出

相当于是多个等式的集合。
比如

[Y1, Y2, Y3, ...] = deal(X1, X2, X3)

等价于

Y1 = X1;
Y2 = X2;
Y3 = X3;

常用于使初始化更简洁:

[A,B,C,D] = deal(zeros(3,4),[],ones(2),cell(2));

ismissing 查找缺失值

ismissing或者isNaN,返回一个矩阵,缺失值位置为1,其余为0。

拟合曲线

  • fit
  • polyfit
  • lsqcurvefit
  • fitlm拟合线性回归

Squeeze

把一维无意义的维度去掉

tabulate 统计数量与比例

结果以下列方式展示:
Value Count Percent
1 105919 36.46%
2 141651 48.76%

系统操作

beep

发出一声响

clear

  • 清除workspace
  • clear all 清除所有
  • clear a 清除变量a

clc

清除命令窗口

clf

清除图形

dbstop if error

出错自动暂停,可以方便的进行调试,显示函数内的变量
配合一下两个命令:

  • dbup 回到上层workspace
  • dbdown 回到下层workspace
    使用方法:
    先在命令框里输入:dbstop if error
    再输入脚本名字: myscript

quit 推出matlab

quit force 直接退出, 不保存

sound 发出声音

可以在运行出结果后提醒
使用clear sound来停止发声。

waitbar 显示进度条

warndlg 创建警告窗

f = warndlg('Pressing ACCEPT clears memory','Warning');

在这里插入图片描述

prefdir

显示matlab的配置目录. 里面包含了配置文件, 可以拷贝到新的matlab里.

文件操作

fileparts 求信号的目录, 文件名, 扩展名

mfilename

获得改m文件的文件名或所在绝对路径.

画图

axis ij

翻转y轴: 从大到小

confusionchart

画混淆矩阵,同时可以画出precision,recall等。

linkaxes

同步两图坐标轴

上标下标斜体

格式和latex一样。如下标 X a X_{a} Xa就可以写X_{a}

yyaxis right

可以在右边同时再做一个坐标轴,如图
在这里插入图片描述

zoom on

放大,常用于画图之后

最后

以上就是可靠草莓为你收集整理的matlab之常用命令整理(持续更新中...)信号处理数值计算科学计算系统操作文件操作画图的全部内容,希望文章能够帮你解决matlab之常用命令整理(持续更新中...)信号处理数值计算科学计算系统操作文件操作画图所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(134)

评论列表共有 0 条评论

立即
投稿
返回
顶部