Matlab之数据筛选

Matlab功能强大,这里介绍一些数据筛选方法,至少让其达到Excel的数据筛选程度

一、从多维数组中取某些行或列组合为新数组

示例如下:取某些列组成新数组

newdata=olddata(:,[1 5 8 2 6]);

二、按照某个条件对多维数组某行或列进行筛选,同时扩展到其他行或列

olddata是一个多行多列的数组。

newdata=olddata(olddata(:,1)==value,:);

三、筛选方法

3.1 寻找介于某个范围的所有元素

pf=olddata(olddata(:,1)>=value1&olddata(:,1)<=value2);
tempnum=find(pf<=value1&pf>=value2);

3.2

四、字符串拼接

newstr=strcat(oldstr,'new text');

换行操作:使用大括号{}或者使用newline作为换行符

str=[{'ueifkdu';'877'}];

chr = 'Whose woods these are I think I know.';
chr = [chr newline 'His house is in the village though']

五、导入csv文件

csvread函数。。。
参数1:文件路径;
参数2:开始的行数(默认从0行开始);
参数3:开始的列数(默认从0列开始)。

data=csvread('121.csv',1,1);

可能错误:第一行中文乱码,读取时不从0行开始即可。

六、figure设置

xlabel('MHz');%设置X轴标签
ylabel('Angle');%设置y轴标签
title('Usefull');%设置标题
xlim([0 6000]);%设置X轴显示范围
ylim([0 180]);%设置Y轴显示范围
set(gcf,'position',[50,70,1400,700]);%设置figure位置和大小
text(xloc,yloc,showstr);%在坐标点处显示文本
yRange=ylim;%获取当前figure的y轴显示范围

七、保存图片和csv数据

%保存路径是否存在,不存在新建
if ~isfolder(savepath)
	mkdir(savepath);
end

saveas(2,strcat(savepath,'001.jpg');%保存figure2
saveas(1,strcat(savepath,'002.jpg');%保存figure1
savepath=strcat(savepath,'.csv');
csvwrite(savepath,Data);

八、利用3西格玛准则过滤数据

%% 利用3西格玛准则过滤数据
function [data_new] = ryan_filter(data)
% Ryan filter for outlier detection
% data: input data
% data_new: output data after filtering
mu = mean(data);
sigma = std(data);
data_new = data(abs(data - mu) <= 3*sigma);
end
  • 18
    点赞
  • 105
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kissgoodbye2012

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值