matlab中double、char和cell的互转

博客介绍了使用Matlab处理txt文档的方法,先通过importdata函数读入文档,读入后有data和textdata字段可获取数据。还阐述了数据类型转换问题,如cell2mat、str2num等函数的使用,并给出了获取txt文档指定列数据存入struct的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


首先我们要读入txt文档,读入txt文档的函数为:A=importdata(filename.txt),读入之后才可以对文档进行处理,读入之后一般会有data和textdata两个字段,你需要那个就直接A.data或A.textdata获取。
获取完之后就存在这转换问题了,比如我们最终要的格式为:

可以看出有些事char字符型,有的是矩阵型
所以接下来就是转换问题,前提是要弄清楚你要的是什么类型,有的是什么类型
1、cell2mat:将cell转换为mat的char型
2、str2num:将mat从char转换为double型
3、cellstr:将char转cell
4、num2str:将double转char
5、num2cell:将double直接转cell

比如:

files = dir( ['\*.txt']);
name = files.name;
A = importdata(name);
info = A.textdata;
B(1).objects(1).bbox(:,1)=str2num(cell2mat(info(j,4))); B(1).objects(1).bbox(:,2)=str2num(cell2mat(info(j,5)));
1
2
3
4
5
6
就可以获取txt文档中第4列和第5列的数据存入一个B的struct中。

转载于:https://www.cnblogs.com/caizhao/p/10831640.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值