概述
一些自己工作中遇到的问题. 希望对大家也有帮助.
- 信号处理
- 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之常用命令整理(持续更新中...)信号处理数值计算科学计算系统操作文件操作画图所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复