matlab中元胞数组的使用

这里介绍matlab中元胞数组的使用。元胞数组既可以存储数值,也可以存储字符串。在matlab中使用比较方便。
假如一个文件中既有字符串又有数值,而且我们在读取的时候既需要读取字符串也需要读取其中的数值,那么使用命令时matlab默认将其读出为元胞数组格式,即cell。 假如我们有如下一个文件,命名为aaa.txt: 输入如下命令,即得到一个cell: fid = fopen('aaa.txt','r');aa = textscan(fid,'%s');fclose(fid);

下面介绍一下cell 的生成和用法: cell与数组一样,都是含有各种元素。其中的元素可以是字符或字符串,也可以是数值或数组。比如我们建立如下数组: bb = {[1 2 3;4 5 6],'abcdefg';2,'a'}; 也可以通过如下命令建立同样的数组: aa = [1 2 3 ;4 5 6];bb = {aa,'abcdefg';2,'a'}

下面展示一下这一cell数组: cellplot(bb)

那么与数组一样,我们可以通过它的行列来找到想要的元素。 如bb{1,1}的值与bb(1,1)的值相同,为: ans = 1 2 3 4 5 6
同样可以提取cell中的数据,比如上述bb的第一个数据为一个数组,那么aa = bb{1,1}的结果为: aa= 1   2   3   4   5   6
假设我们使用第一步的结果,可以将整个数据全部输入到一个cell中,然后使用循环命令将需要的数据提取出来。 步骤一中是数组中还包含数组,我们需要第8,9;13,14;18,19等行的数据,具有一定的规律,那么可以使用: jj = 8;ii = 1; while jj = 7000 cc{ii,1} = aa{1,1}(jj); cc{ii,2} = aa{1,1}(jj+1); jj = jj+5; ii = ii+1; end 依次提取出需要的数据。

当然最后在cc这个cell中,可能还不是我们需要的数据,这是度分秒格式,我们需要换算成度的数值格式,那么可以使用以下命令: for jj = 1:length(cc) dd(jj,1) = str2num(cc{jj,1}{1,1}(1:2))+str2num(cc{jj,1}{1,1}(4:5))/60+str2num(cc{jj,1}{1,1}(7:13))/3600; dd(jj,2) = str2num(cc{jj,2}{1,1}(1:3))+str2num(cc{jj,2}{1,1}(5:6))/60+str2num(cc{jj,2}{1,1}(8:14))/3600; end 然后就可以得到要的经纬度数据。

  • 鍦╩atlab涓庝箞鏍疯緭鍑鍏冭優鏁扮粍
    绛旓細celldisp鎴栬呯洿鎺浣跨敤涓嬫爣{ }
  • matlab鍏冭優鏁扮粍鍐呴儴鎬庝箞鍋氳繍绠??
    绛旓細鍏堢敤cat鍛戒护鎶奵ell鏁扮粍鎷兼帴涓轰笁缁存暟缁勶紝鐒跺悗娌跨3缁存眰鍜屽嵆鍙細sum(cat(3,x{:}),3)绀轰緥锛>> for i=1:100,x(i,1)={rand(5,5)};end>> whos Name Size Bytes Class ans 5x5 200 double array i 1x1 8 double array x 100x1 26000 cell arrayGrand...
  • matlab 鍏冭優鏁扮粍
    绛旓細a=textread('鏂囦欢鍚','%s','delimiter','., ');鍦ㄦ枃浠跺悕澶勫~浣鐨txt鏂囦欢鐨勫悕瀛 鍦ㄥ乏鍚庝竴涓樷閲岄潰鍐欏叆鍙兘鍒嗛殧鐨勭鍙凤紝鍖呮嫭閫楀彿锛屽彞鍙凤紝绌烘牸绛
  • matlab鎬庝箞姹鍏冭優鏁扮粍鐨鍒楃殑鍧囧
    绛旓細鍋囪鍏冭優鏁扮粍鏄疉 濡傛灉鍏冭優鏁扮粍涓紝姣忎釜鍏冪礌鏄1涓暟锛岄偅涔堝皢鍏冭優鏁扮粍锛岄氳繃B=cell2mat(A)杞寲涓烘櫘閫氱煩闃 鐒跺悗灏辨寜鏅氱煩闃甸偅鏍锋眰骞冲眬灏卞彲浠ヤ簡 濡傛灉鍏冭優鏁扮粍鐨姣忎釜鍏冪礌鏄竴涓煩闃碉紝浣犺姹傛瘡涓煩闃电殑骞冲潎鍊 鐢˙=cellfun(@mean,A);
  • matlab 鎬庝箞鎶鍏冭優鏁扮粍鍙栧嚭鏉鐨鍐呭鏀惧埌涓涓柊鐨勭煩闃
    绛旓細dp_image{i}, 娉ㄦ剰鏄ぇ鎷彿锛岃〃绀哄彇 绗 i 涓 鑳鏁版嵁銆傚畾涔変竴涓4缁村悜閲忥紝鏈濂 鎶 20 瀹氫箟鎴 鏈鍚庝竴缁 dp_new = zeros(61,73,61,20); 鐒跺悗璧嬪
  • matlab涓cell array鏄粈涔
    绛旓細鍏冭優鏁扮粍锛屼緥濡傜煩闃礱鏄厓鑳炴暟缁 鍙互杩欐牱 a={'jkghkfh',[1 25 4 8];eye(3),{'ddfsd','goodmarlab'}} 杩愯缁撴灉 a = 'jkghkfh' [1x4 double][3x3 double] {1x2 cell } 杩欐牱 a灏卞拰涓鑸鐨鏁扮粍灏变笉涓鏍
  • matlab鎬庢牱鍚堝苟鍏冭優鏁扮粍?
    绛旓細浠g爜锛歁={'a';'b';'c'};N={'e';'f';'g'};P={'r'};Q={'h'};[M N;P Q]鑳炲厓鏁扮粍(cell Arry)鐨勫熀鏈粍鍒嗘槸鑳炲厓(cell)锛屾瘡涓優鍏冩湰韬湪鏁扮粍涓槸骞崇瓑鐨勶紝鍙兘浠ヤ笅鏍囧尯鍒嗐傝優鍏冨彲浠ュ瓨鏀句换浣曠被鍨嬨佷换浣曞ぇ灏鐨勬暟缁銆傚浠绘剰缁存暟鍊兼暟缁勩佸瓧绗︿覆鏁扮粍銆佺鍙峰璞$瓑锛岃屼笖鍚屼竴涓優鍏冩暟缁勪腑...
  • MATLAB濡備綍涓鍏冭優鏁扮粍鍒濆鍖栧ぇ灏忎笉鍚鐨鏁扮粍?
    绛旓細浣犺繖閲屾棦鐒跺垵濮嬪寲浜哸a涓轰竴涓猲涔1鐨勫厓鑳炴暟缁锛屽湪缁欎换鎰忓厓鑳炲鍒剁殑鏃跺欑洿鎺ラ噰鐢╝a{m}=bb鐨勫舰寮忓箙鍊煎氨鍙互浜嗭紝bb灏辨槸浣犵殑浠绘剰澶у皬鏁扮粍銆傚c鍜宒鏄笉鍚屾暟缁 aa{1}=c aa{2}=d 浠呬緵鍙傝冿紝濡傛湁閿欒璇峰悇璺綉鍙嬪敖蹇洖澶嶆垨鐐硅瘎锛屼互璁╂湰浜哄敖蹇慨姝f垨鍒犻櫎璇ョ瓟妗 ...
  • matlab鍏冭優鏁扮粍濡備綍鎻愬彇閲岄潰鐨勫叿浣撳厓绱?
    绛旓細鍋囪A鏄209涓厓绱鐨勫厓鑳炴暟缁锛屽苟涓旀瘡涓厓绱犵煩闃电殑琛屾暟鐩稿悓銆 B=[];for n=1:length(A) B=[B,A{n}(:,[1 end])];%鎴戜笉鐭ラ亾浣犳兂鎬庝箞鍚堝苟锛屾垜灏辨寜A{1}涓ゅ垪A{2}涓ゅ垪A{n}涓ゅ垪杩欐牱鐨勯『搴忓悎浜嗭紝涓嶆槸鐨勮瘽浣犺嚜宸辨敼end銆傚幓闄ゅ厓绱:cella = {[1 2 3],[2 3 4]} arra = cella{1}...
  • matlab涓浣浣夸竴涓鏁扮粍涓棦鏈夋暟瀛楀張鏈夊瓧绗︿覆
    绛旓細浠庢暟缁勭嫮涔夎搴︽潵璇达紝MATLAB骞朵笉鍏佽鏁扮粍涓嚭鐜板瓧绗︿覆銆備絾鏄瓧绗︿覆鏁扮粍鍙互瀹炵幇銆備緥濡 str = ['12','tea'];鍒檚tr涓寘鍚簡鏁板瓧涓庡瓧绗︿覆锛屼絾鏄敞鎰忥紝杩欓噷鐨12鏄袱涓瓧绗︼紝鑰屼笉鏄1涓暟瀛椼傞櫎浜浣跨敤瀛楃涓叉暟缁勫疄鐜帮紝杩樺彲浠ラ氳繃鍏冭優鏁扮粍瀹炵幇銆傚厓鑳炴暟缁勬槸MATLAB涓涓绉嶆暟缁勶紝鍏跺彲浠ュ寘鍚换鎰忕被鍨嬬殑鍙橀噺 渚嬪 ...
  • 扩展阅读:matlab数组的加减乘除 ... matlab结构体转化为数组 ... matlab元胞数组的运算 ... matlab如何取数组全下标 ... matlab 元胞数组合并 ... 怎么建立元胞矩阵 ... matlab元胞数组索引 ... matlab如何创建元胞 ... matlab元胞数组转化为数字 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网