吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Matlab數據導入-importdata和load函數說明

冬至子 ? 來源:算法工程師的學習日志 ? 作者:搬磚工程師domi ? 2023-07-19 16:00 ? 次閱讀

1.引言

在使用matlab將數據導入到工作空間的時候,經常會使用到兩個函數,一個是importdata函數,另一個是load函數,它們的使用方法和使用場景是太相同的,如果不太注意就可能會犯錯誤,在這里做簡要的說明和記錄。

2.importdata函數

下面是幫助文檔提供的importdata函數的語法說明

importdata
load data from file


Syntax
A = importdata(filename)
A = importdata(‘-pastespecial’)
A = importdata( _ ,delimiterIn)
A = importdata( _ ,delimiterIn,headerlinesIn)
[A,delimiterOut,headerlinesOut] = importdata( _ )


Description

  • A = importdata(filename) loads data into array A.
  • A = importdata(‘-pastespecial’) loads data from the system - clipboard rather than from a file.
  • A = importdata( _ ,delimiterIn) interprets delimiterIn as the column separator in ASCII file, filename, or the clipboard data. You can use delimiterIn with any of the input arguments in the above syntaxes.
  • A = importdata( _ ,delimiterIn,headerlinesIn) loads data from ASCII file, filename, or the clipboard, reading numeric data starting from line headerlinesIn+1.
  • [A,delimiterOut,headerlinesOut] = importdata( _ ) additionally returns the detected delimiter character for the input ASCII file in delimiterOut and the detected number of header lines in headerlinesOut, using any of the input arguments in the previous syntaxes.
  • importdata函數主要特點是可以從文本文件中導入數據
  • 導入的數據可以是類似于表格形式的,可以含有表頭即列名稱,也可以不含表頭。
  • 表頭可以是文本形式的。
  • 除了官方文檔說明的這些我發現,importdata導入的數據除了可以列名外還可以含有行名。導入時列名會被放在colheaders數組中,行名會被放在rowheaders數組中。
  • importdata還可以用來導入圖片,傳入圖片的名稱即可

樣例1:

%1.txt
%a1 a2 a3 a4
%1 3 5 3
%1 2 4 6
%7 5 4 8
%3 7 9 8
%2 3 7 4
> > impdata = importdata('1.txt')


impdata = 


  包含以下字段的 struct:


          data: [5×4 double]
      textdata: {'a1'  'a2'  'a3'  'a4'}
    colheaders: {'a1'  'a2'  'a3'  'a4'}


> > class(impdata)


ans =


    'struct'

可見importdata函數會將數據導入到一個結構體變量中,文本與數字分別導入到結構不同的屬性中。數字部分導入到屬性data中是一個矩陣,文本部分導入屬性textdata中是一個細胞數組。如果textdata中的文本是列名則同時還會保存到屬性colheaders中

樣例2:

%2.txt
%b1 1 3 5 3
%b2 1 2 4 6
%b3 7 5 4 8
%b4 3 7 9 8
%b5 2 3 7 4


> > impdata = importdata('2.txt')


impdata = 


          data: [5x4 double]
      textdata: {5x1 cell}
    rowheaders: {5x1 cell}

圖片

圖片

如果textdata中的文本是行名則同時還會保存到屬性rowheaders中。注意不能將行名稱放在最后一列,這樣將不能正確導入。所以在進行分類時,不能將字符型的類標簽放在最后一列,而是應該放在第一列。

樣例3:

%3.txt
%a1 a2 a3 a4
%b1 b2 b3 b4
%1 3 5 3
%1 2 4 6
%7 5 4 8
%3 7 9 8
%2 3 7 4


> > impdata = importdata('3.txt')


impdata = 


          data: [5x4 double]
      textdata: {2x4 cell}
    colheaders: {'b1'  'b2'  'b3'  'b4'}

圖片

圖片

圖片

圖片

可以看到如果在頭部文本超過兩行,只有最后一行會作為列名分開讀取,前面的列作為一個字符串,不分開,分隔符也不會被識別,而是當做普通字符。

樣例4:

%a1 a2 a3 a4
%b1 1 3 5
%b2 1 2 4
%b3 7 5 4
%b4 3 7 9
%b5 2 3 7


> > impdata = importdata('4.txt')


impdata = 


        data: [5x3 double]
    textdata: {6x4 cell}

圖片

圖片

圖片

3.load函數

load函數一般將用來導入純數字的文件,可以是文本格式的文件或者是matlab保存的mat格式的文件。

>> A = magic(3)


A =


     8     1     6
     3     5     7
     4     9     2


 >> save A.mat A
 >> clear
 >> load A.mat
 >> load 5.txt  # 自動生成X+txt文件名的變量
 >> B = load('5.txt')  # 把導入的數值賦給B

圖片

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • MATLAB仿真
    +關注

    關注

    4

    文章

    176

    瀏覽量

    19998
  • ASCII碼
    +關注

    關注

    0

    文章

    51

    瀏覽量

    17351
收藏 人收藏

    評論

    相關推薦

    【資料分享】STM32的函數說明(中文)

    STM32的函數說明(中文)
    發表于 03-24 23:54

    STM32庫函數說明和使用示例---EXTI庫

    STM32庫函數說明和使用示例---EXTI庫
    發表于 09-09 16:16

    請問有USB的庫函數說明手冊pdf么

    有USB的庫函數說明手冊pdf么?,哪位前輩有的話請幫忙分享下謝謝了
    發表于 10-29 08:39

    STM32庫函數說明及示例

    STM32庫函數說明及示例(版本V1.4.0)----第一篇:GPIO庫文檔說明和約定:該文檔主要是對STM32F4各個模塊的庫進行翻譯和說明。文檔中加入了作者的一些理解,建議和小貼士。并且在文檔
    發表于 08-23 08:30

    Matlab數據擬合基礎函數的使用

    Matlab數據擬合基礎函數的使用,教你如何擬合兩個未知量
    發表于 11-10 16:45 ?0次下載

    函數說明

    函數說明,配套的函數說明,又需要的下來看看
    發表于 07-15 16:03 ?0次下載

    IMAQ函數說明

    IMAQ函數說明,感興趣的可以瞧一瞧!
    發表于 01-14 02:49 ?30次下載

    Vivado 中數據導入MATLAB的方法

    .txt文件 2.在MATLAB中使用函數xlLoadChipScopeData()將文件導入緩存。(需要相應的MATLAB和ISE設置) 上述兩
    發表于 02-09 01:43 ?2278次閱讀

    STM32的函數說明(中文)

    STM32官方庫函數中文說明
    發表于 03-01 21:53 ?90次下載

    GX09和GX06常用函數說明

    本文檔的主要內容詳細介紹的是GX09和GX06常用函數說明
    發表于 01-13 08:00 ?30次下載
    GX09和GX06常用<b class='flag-5'>函數說明</b>

    STM32F4 HAL庫函數說明下載

    STM32F4 HAL庫函數說明下載
    發表于 05-26 09:27 ?78次下載

    OpenCV-Python中的函數說明

    ? 函數說明 OpenCV C++的圖像對象Mat有一個函數convertTo可以把圖像數據在不同的精度類型之間來回切換比如從字節到浮點數之間來回切換。非常方便,該函數的官方
    的頭像 發表于 07-08 10:52 ?906次閱讀

    STM32CUBEIDE(4)----GPIO輸出函數說明

    本章主要講解GPIO輸出函數說明。 最近在弄ST和GD的課程,需要樣片的可以加群申請:615061293。
    的頭像 發表于 11-24 10:51 ?1583次閱讀
    STM32CUBEIDE(4)----GPIO輸出<b class='flag-5'>函數說明</b>

    GD32F303固件庫開發(4)----GPIO輸出函數說明

    本章主要講解GPIO輸出函數說明。 最近在弄ST和GD的課程,需要樣片的可以加群申請:615061293。
    的頭像 發表于 11-24 14:17 ?2743次閱讀
    GD32F303固件庫開發(4)----GPIO輸出<b class='flag-5'>函數說明</b>

    串口屏LUA教程5-控件讀寫操作函數說明

    串口屏LUA教程5-控件讀寫操作函數說明
    發表于 04-29 13:09 ?6次下載
    顶级赌场直营| 大发888体育场| 百家乐官网赌场娱乐| 大发888注册送28| 南通棋牌游戏中心| 任我赢百家乐自动投注系统| 百家乐官网百家乐官网伴侣| 百家乐园有限公司| 百家乐实战技术| 网上百家乐官网庄家有赌场优势吗| 丹东亿酷棋牌下载| 百家乐出牌规| 百家乐必胜| 七胜百家乐官网娱乐网| 泸州市| 大发888官方我的爱好| 大赢家百家乐66| 百家乐官网封号| 百家乐官网赢家公式| 百威百家乐官网的玩法技巧和规则| 彭泽县| 名仕国际棋牌下载| 安徽棋牌游戏中心| 水果老虎机的程序| 百家乐长龙如何判断| 百家乐官网群详解包杀| 百家乐官网娱乐平台真钱游戏| 真钱百家乐官网开户试玩| 世博娱乐城| bet365娱乐城| 大发888玩法技巧| 大发888在线娱乐城合营商| 百家乐微笑玩法| 百家乐免费试玩游戏| 百家乐对打反水| 多伦多百家乐官网的玩法技巧和规则| 信誉百家乐官网博彩网| 百家乐官网庄家出千内幕| 百家乐官网视频下载地址| 百家乐官网长龙如何判断| 百家乐官网出千原理|