您当前的位置: 首页 >  matlab

wendy_ya

暂无认证

  • 3浏览

    0关注

    342博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

MATLAB习题练手(入门级)

wendy_ya 发布时间:2020-10-21 16:14:21 ,浏览量:3

最近在学MATLAB,如果没有习题练手怎么也记忆不牢固,因此,下面有几道习题对MATLAB基础知识进行训练,帮助大家尽快熟练上手MATLAB。 【注】:请务必独立思考后再看参考程序,这样才能提高编程能力。

1.使用cell进行数据分组

任务说明: 读入usedata.mat文件,该数据包含多组测试数据,第一列为数据标号,用于区分各组数据;第二列为各数据点的x;第三列为各数据点的y; (资源参考:https://download.csdn.net/download/didi_ya/12997609(免费,无需积分)) 达成功能: 将所给文件的数据相同数据标号的数据分到一个cell中。

使用到的知识点:cell。

代码示例:

clear all;clc;
load usedata.mat%加载usedata.mat文件
%usedata(:,1);
linename=unique(usedata(:,1));%从小到大排序且不含重复项,即组名
[linenum,~]=size(linename);%有几个组
linedatanum=zeros(linenum,2);%初始化
linedatanum(:,1)=linename;%第一列为组标号
for kk=1:linenum%1:10
    [m,n]=find(usedata(:,1)==linename(kk,1));%遍历找到每一个组的行数和列数
    line1=usedata(m,:);%一次取出一个组的内容
    linedatanum(kk,2)=size(line1,1);%求该组的行数,并转化为向量形式
end

C=mat2cell(usedata,linedatanum(:,2))%将文件内的数据转换为若干个元胞数组

【注】:关于函数find和unique的详细解释及用法,可参考MATLAB官方文档: https://ww2.mathworks.cn/help/pdf_doc/matlab/matlab_refbook_zh_CN.pdf

2.

(未完待续)

有其它任何疑问也欢迎评论区告知~

关注
打赏
1659256378
查看更多评论
立即登录/注册

微信扫码登录

0.0359s