MATLAB中字符串、字符、单元数组和数字格式互相转换详解
创作时间:
作者:
@小白创作中心
MATLAB中字符串、字符、单元数组和数字格式互相转换详解
引用
CSDN
1.
https://blog.csdn.net/wokaowokaowokao12345/article/details/108595246
在MATLAB编程中,字符串、字符、单元数组和数字之间的格式转换是一个常见的需求。本文将详细介绍这些转换方法,并通过对比展示不同函数的优劣,帮助读者更好地掌握MATLAB编程技巧。
简介
关于如何进行字符串、字符、单元数组和数字格式互相转换的例子很多,但是都很单一,有时候使用的时候需要查找很久才可以解决问题。这里就对这几种方法进行一个汇总。
之所以会涉及使用单元数组(cell),是因为在处理数据时,有时需要将字符串和数字存储在同一“矩阵”中,这时候需要使用单元数组进行存储。在数据处理时又需要进行单元数组转矩阵,因此掌握这些转换方法可以使得程序更加简洁高效。
使用到的语法
cell2mat % 将单元数组转换为矩阵的字符型
str2num % 将字符型矩阵转换为双精度型
str2double %推荐使用该函数而不是str2num
cellstr % 将字符型矩阵转换为单元数组
num2str % 将双精度型转换为字符型
num2cell % 将双精度型直接转换为单元数组
num2str
官方文档:https://ww2.mathworks.cn/help/matlab/ref/num2str.html
点评,该函数对矩阵,以行为单位进行转换为字符型矩阵。
cellstr
官方文档:https://ww2.mathworks.cn/help/matlab/ref/cellstr.html?s\_tid=srchtitle
将字符串转换为字符向量单元数组。
用法:
seasons = ['Seasons'; cellstr(num2str(seasons))]
str2double
推荐使用str2double而不是str2num,是因为当单元数组中存储的字符串不是等大小时,str2num将会出错。
例如:
cellstr({'12', '123', '-9999'})
结果:
1×3 cell 数组
'12' '123' '-9999'
str2num效果:
str2num(cellstr({'12', '123', '-9999'}))
错误使用 str2num (line 31)
需要字符矢量或数组输入。
str2double效果:
str2double(cellstr({'12', '123', '-9999'}))
ans =
12 123 -9999
str2double对于多维单元数组也可以直接转换为数字矩阵。
aot = str2num(cell2mat(data(:,7)));
aot = str2double(data(:,7));
热门推荐
家庭用电安全大检查:从LED灯具微亮说起
家庭电路故障大揭秘:轻松搞定用电难题!
创新游戏网站设计探索:打造用户友好的互动体验与视觉盛宴
过年那点事① | 年夜饭是怎么来的?除了团圆祈福,它竟然还和木星有关
史上最火铁路春运,上海单日发客量创下历史新高
哪些东西可以用来堆肥?哪些绝对不应该堆肥?
四种自制有机肥方法,让农业废弃物变废为宝
如何在家制作堆肥:完整的堆肥箱指南
年轻人养生新风尚:探索养生食品与消费习惯
水煮牛肉食谱:如何在家轻松制作令人垂涎的家常菜?
李白陆游教你品酒悟人生
李白的金樽人生:诗酒趁年华
菊苣与栀子茶的健康功效:降低尿酸的有效方法
菊苣栀子茶的功效与作用
探访贵州最美古镇:西江千户苗寨和镇远古镇
冬日探秘:贵州龙宫的冰雪奇缘
秋冬自驾游贵州:从贵阳到荔波小七孔的探险之旅
总台春晚分会场带火!无锡春节热门景点大揭秘
无锡泰伯庙会:世界非遗里的江南年味
罗甸大小井:贵州隐藏的人间仙境
凯撒级战列舰:德国海军的巅峰之作
花里胡哨不如“大舰巨炮”?510口径碾压带来非凡享受!
逐渐“消失”的猪油,老一辈从前天天吃,如今又开始受欢迎
从高校毕业生窃取数据事件看个人信息安全防护
父母要多讲究点儿说话艺术
《迟冬不赴春》爆红:安以夏与盛司聿的爱情密码
良好的兴趣爱好有益于心理健康
用花朵为生日祝福点缀(传递温馨祝福)
朋友生日送花指南:不同性格朋友的专属花语
中科大马骋教授团队牵手五矿新能,共推固态电池产业化