1、MATLAB删除字符串中任意字符
构建一个字符串:s
% 删除空格
s(isspace(s)) = [];%去除空格
%删除字符串中所有的16进制的0
char2asc2=abs(s);%转asc2
char2asc2(char2asc2==0)=[];%删除NULL 0
s=char(char2asc2);
%删除字符串中所有的16进制的5
char2asc2=abs(s);%转asc2
char2asc2(char2asc2==5)=[];%删除5
s=char(char2asc2);
%删除字符串中一个字符“H”
char2asc2=abs(s);%转asc2
char2asc2(char2asc2==abs('H'))=[];%删除5
s=char(char2asc2);
2、MATLAB 一二三维矩阵之间转换
低维转高维
%一维转二维
A = 1:12
B2=reshape(A,[3,4])
% 一维转三维
B3=reshape(A,[2,2,3])
% 二维转三维
C3=reshape(B2,[2,2,3])
高维转低维
% 三维转二维
A=rand(3,3,3);
A1 = A(:,:,2); % 3*3 二维
A2 = A(:,2,:); % 3*1*3 三维
A3 = A(2,:,:); % 1*3*3 三维
% 将三维转为 81*81 二维
A22 = reshape(A2,3,3);
A32 = reshape(A3,3,3);
% 三维转一维
B1=reshape(A,1,[]);
% 二维转一维
C1=reshape(A22,1,[]);
3、MATLAB常见取整函数
函数 功能
round 四舍五入
fix 保留整数部分
floor 向下取整
ceil 向上取整
sign 提取符号
rem 取余数
mod 取模数
4、MATLAB 将矩阵生成CSV文件
name=file_name;
%表头
various={'img','c0','c1','c2','c3','c4','c5','c6','c7','c8','c9'};
%表的内容
result_table=table(name,m1(:,1),m1(:,2),m1(:,3),m1(:,4),m1(:,5),m1(:,6),m1(:,7),m1(:,8),m1(:,9),m1(:,10),'VariableNames',various);
%创建csv表格
writetable(result_table, 'test.csv')
%或者
%----------------------------数据导入到csv------------------------
%all_data为你要保存的矩阵
result_table=table(all_data);
%创建csv表格
writetable(result_table, 'test.csv')
5、Matlab字符串连接加空格—strcat函数
matlab ASCII码32可以表示空格。
a1 = strcat('case ',32,num2str(count),':','{','D1=',num2str(b1),';','C1','=',num2str(b2),';','B1','=',num2str(b3),';','A1','=',num2str(b4),';}')
结果:
a1 = case 120:{D1=1;C1=1;B1=1;A1=0;}
6、将矩阵保存到txt
str = strcat('.\data_sample\','2', '.txt'); %数据保存路径
dlmwrite(str, data_sample); %data_sample为矩阵
加载txt
load(str)
以下是matlab采集阻抗数据的部分代码
if mode == 0
count = count + 1;
data_sample = [data_sample;vi'];
if count == num_sample_once
dlmwrite(str, data_sample);
fclose(s)
end
end