matlab 在批量处理csv文件数据的时候常用的处理函数
来源:互联网 发布:快递打印单软件 编辑:程序博客网 时间:2024/05/17 06:03
本篇文章中我将完成如何大批量处理csv文件的数据。首先讲解程序里用到的函数。
在此之前,向新手科普一下matlab注释多行的小技巧:注释:ctrl+r 取消注释:ctrl+t
1、str = strrep(str1, str2, str3)
用于删掉某些不需要的符号,比如本例中我用此函数删除了双引号!在 str1 中找到str2 ,替换成str3
str1 = 'This is a good example.';
str2 = 'good';
str3 = 'great';
str = strrep(str1, str2,str3)
str =
This is a great example.
2、S = regexp(str,char,'split')
其中str是待分割的字符串,char是作为分隔符的字符(可以使用正则表达式)。分割出的结果存在S中。
以下面这样一串字符为例
Hello Nocturne Studio
首先去除首尾的多余空格:<span style="font-family:Microsoft YaHei;font-size:18px;">str = <span style="padding: 0px; margin: 0px; color: rgb(0, 0, 255);">deblank</span><span style="padding: 0px; margin: 0px; color: rgb(0, 136, 0);">(</span>str<span style="padding: 0px; margin: 0px; color: rgb(0, 136, 0);">)</span></span>例1:设这几个字符串是以制表符分隔的,可以这样来做:
<span style="font-family:Microsoft YaHei;font-size:18px;">S = regexp<span style="padding: 0px; margin: 0px; color: rgb(0, 136, 0);">(</span>str, <span style="padding: 0px; margin: 0px; color: rgb(160, 32, 240);">'\t'</span>, <span style="padding: 0px; margin: 0px; color: rgb(160, 32, 240);">'split'</span><span style="padding: 0px; margin: 0px; color: rgb(0, 136, 0);">)</span></span>例2:设这些字符串是以一个或多个空格分隔的,可以用正则表达式来描述:
<span style="font-family:Microsoft YaHei;font-size:18px;">S = regexp<span style="padding: 0px; margin: 0px; color: rgb(0, 136, 0);">(</span>str, <span style="padding: 0px; margin: 0px; color: rgb(160, 32, 240);">'\s+'</span>, <span style="padding: 0px; margin: 0px; color: rgb(160, 32, 240);">'split'</span><span style="padding: 0px; margin: 0px; color: rgb(0, 136, 0);">)</span></span>这样,S{1}=’Hello’,S{2}=’Nocturne’,S{3}=’Studio’。 注意,上面得到的结果S是一个cell型变量,它的每个元素比如S{1}仍然是cell型的,只能用来display,不能直接用来进行字符串操作(比如获取其中的某个字符),所以我们在使用需要执行一次:
<span style="font-family:Microsoft YaHei;font-size:18px;">s1 = <span style="padding: 0px; margin: 0px; color: rgb(0, 0, 255);">char</span><span style="padding: 0px; margin: 0px; color: rgb(0, 136, 0);">(</span>S<span style="padding: 0px; margin: 0px;">{</span><span style="padding: 0px; margin: 0px; color: rgb(51, 51, 255);">1}</span><span style="padding: 0px; margin: 0px; color: rgb(0, 136, 0);">)</span></span>
这样的s1才是一个真正的字符串,可以进行后续的操作。
3、sort()
B=sort(A) 对一维或二维数组进行升序排序,并返回排序后的数组,当A为二维时,对数组每一列进行排序.
eg: A=[1,5,3],则sort(A)=[1,3,5]
(2)B=sort(A,dim),对数组按指定方向进行升序排序,
dim =1,表示对每一列进行排序,,dim=2表示对每一行进行排序.
(3)B=sort(A,dim,mode),mode为指定排序模式,mode为"ascend"时,进行升序排序,为"descend "时,进行降序排序.
(4)[B,I]=sort(A,.....),I为返回的排序后元素在原数组中的行位置或列位置.
4、mat2cell
注意如果使用cell2mat,必须注意每个cell中的数据保证一个size。
c = mat2cell(x, m, n)
x代表要进行划分的矩阵,m划分的列,n为划分的行的类型。
c=mat2cell(x, [10 20 30], [25 25])
若x 为60*50的矩阵
x c
60*50 10*25 10*25
20*25 20*25
30*25 30*25
首先可用的方法很多,网上各式各样,找了好久发现有一个是最简单的:
str2double(cell),而且如果你的cell是一个多维的,不用单个字符串进行转换,直接
str2double()搞定!
6、strfind()
格式:idx=strfind(a,'1');
idx返回的是元素1在数组a中的位置。
7、删除某元素(暴力类型)
(1)字符串删除特定的字符
name(end-3:end)=[];%将name字符串最后三个字符删除。此处注意 .(点号) 算一个字符,空格算一个字符!
(2)删除数组里某一行或者列
array(i,:)=[];删除了array数组里第i行
- matlab 在批量处理csv文件数据的时候常用的处理函数
- Matlab批量处理文件
- matlab 图片的批量处理
- 数字信号处理中常用的matlab函数
- Matlab 常用的图像处理函数
- CSV文件的转义处理
- CSV文件的转义处理
- matlab zscore函数 数据的标准化处理
- matlab 数据的处理
- 一个Matlab中批量处理文件的实例
- 在Hadoop中处理输入的CSV文件
- matlab处理.csv或.data数据集
- prepareStatement的批量处理数据
- prepareStatement的批量处理数据
- 批量处理图像的大小-MATLAB
- 在Apex里面操作数据的时候的异常处理
- matlab 在图像处理中常用的函数使用(1)
- matlab 在图像处理中常用的函数使用(2)
- Android文件,文件夹操作 总结
- 20个常用正则表达式
- Oracle case when 的使用方法
- 安全快速修改Mysql数据库名的5种方法
- HTML——基础教程 w3cschool(一)
- matlab 在批量处理csv文件数据的时候常用的处理函数
- java对redis的基本操作
- 【转】【three.js详解之一】入门篇
- 100天土鸡饲养计划(59)
- 第2期
- 《运维之下》——第八章:服务器硬件测试选型
- Android开发编码规范之适配规则(四)
- 汽车数据网站
- [翻译]Introducing Cartographer