【关于Matlab中一些操作的记录】

0.目的

记录关于matlab实现某些功能的代码段。

001. matlab遍历结构体成员

s = struct('a',11,'b',222) % 定义结构题
fileds = fieldnames(s); % 获取结构体成员名称,并返回元胞cell

for i=1:length(fileds)  % 结构体成员个数
    k = fileds(i);  %第i个结构体成员名,返回cell
    key = k{1}; %cell转化为str
    value = s.(key);  % 引用结构体成员 s.a  与 s.('a')  都可以调用改结构体的成员进行操作
    eval(['variable_',num2str(key) ' = ' num2str(value)])  % 使用eval函数动态创建variable_%s的变量。
end

参考:[1] matlab循环遍历struct结构体.


002. matlab生成不重复随机整数

生成M个范围属于1-N的不重复随机整数(M≤N),利用Matlab自带函数randperm函数可以实现。randperm(n)可以产生1到n的无重复随机整数序列。

a= randperm(10) % 首先产生1到10的随机序列
b = a(1:6)  % 抽取其中六个,即实现了生成6个属于[1,10]的不重复随机数。

参考:[1] matlab之生成不重复的随机整数.


003. matlab字符串拼接

习惯了python中直接用 + 拼接字符串, 忘记matlab中如何操作了。百度了下,matlab中常见的字符串拼接方式有: (1)[ str_a, str_b], (2) strcat(str_a, str_b)函数

%% 想要批量读取规则命名的txt文件,批量处理; CPBOut_x.txt
txt_name = ['OutOpt\' , 'CPBOut_', num2str(i), '.txt'];
fid = fopen(txt_name);

参考:[1] matlab怎么拼接字符串,拼接字符串的几种方法.


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值