91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MATLAB中如何實現具有相同字段的結構體數組合并

發布時間:2021-12-30 17:27:00 來源:億速云 閱讀:487 作者:小新 欄目:大數據

這篇文章將為大家詳細講解有關MATLAB中如何實現具有相同字段的結構體數組合并,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

  碰到的問題:我使用dir函數分別獲得指定路徑下的jpg,png,bmp圖像文件,如下:   

pic_bmp = dir([pName '*.bmp']);

pic_jpg = dir([pName '*.jpg']);

pic_png = dir([pName '*.png']);

(附:關于dir函數:首先它的意思是directory,即獲取當前目錄下的所有文件,利用a= dir(pwd)可以返回當前路徑下的所有文件及文件夾保存到a中,返回的a是一個結構體:a有5個字段,每個字段里面保存了13個Value

K>> a =dir(pwd)

a =

13x1 struct arraywith fields:

    name

    date

    bytes

    isdir

    datenum

我們想要得到a的name,如果使用names=a.name的話我們的到的只是name里面的最后一個值,因為這樣的返回機制就和函數的返回機制差不多a.name要返回13個值所以這樣就需要13個變量來接收它,這樣就很麻煩了。我們可以使用struct2cell函數把a轉化為一個細胞數組:a = struct2cell(a);新的a是一個5x13的cell它的5行的值分別是上面5個字段包含的值。那么現在要獲得所有的name值就容易了:names= a(1,:);

* 表示通配符,*.jpg表示以jpg為拓展名的所有文件;同理name.*表示名字叫做name的所有文件。)

pic_bmp,pic_jpg,pic_png,這三個結構體變量的所有字段名皆相同我們需要把他們的數據合并該怎么做呢?方法不止一種,最直接的就是allPic = [pic_bmp ; pic_jpg ; pic_png];三者之間用分號連接哦,然后再使用struct2cell轉換為細胞數組:allPic = struct2cell(allPic),再allPicName = allPic(1,:);便獲得了所有的name。那么再說一下其他方法吧:你可以使用3次struct2cell把pic_bmp,pic_jpg,pic_png轉化為cell然后分別取出它們的第一行的name值,再合并再一塊。

關于“MATLAB中如何實現具有相同字段的結構體數組合并”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东阿县| 中卫市| 保康县| 姜堰市| 尉犁县| 太原市| 杭州市| 黔西| 正安县| 镇坪县| 辰溪县| 广东省| 五台县| 陆川县| 晋江市| 凉城县| 元谋县| 余姚市| 靖州| 阳江市| 辽阳县| 海口市| 平安县| 临沭县| 鄂温| 博爱县| 内江市| 浮山县| 化德县| 无为县| 榆中县| 新巴尔虎右旗| 绿春县| 合作市| SHOW| 富蕴县| 斗六市| 株洲县| 安徽省| 嘉荫县| 元氏县|