一起來學matlab-matlab學習筆記4
數據導入和導出_1 MAT文件的保存和讀取
覺得有用的話,歡迎一起討論相互學習~
參考書籍
《matlab 程序設計與綜合應用》張德豐等著 感謝張老師的書籍,讓我領略到matlab的便捷
- MATLAB提供了將磁盤文件或剪貼板中的數據加載到工作空間的多種方法,稱之為導入數據(ImportingData);同時也提供了多種將工作空間的變量保存到磁盤的方法,稱之為導出數據(ExportingData).
- 選擇不同的導入機制或導出機制取決於要傳輸的數據的格式,比如文本文件、二進制文件與JPEG文件。MATLAB內嵌了導入/導出以下格式文件的功能:
- 二進制文件。
- 文本文件。
- 圖形文件。
- 音頻或視頻文件。
- 電子數據表。
- 剪貼板的數據。
- Internet的信息。
除了MATLAB的導入函數外,還可以用工具箱來導入具有特定特點的數據。例如,可以使用Database Toolbox來導入關系數據庫的數據。
導入向導
- 導入向導是matlab提供的GUI界面用於導入數據,從文件導入數據,可在matlab命令窗口中選擇File-->Import Data 命令或在命令行輸入:
uiimport-file
- 若從剪貼板導入數據,則選擇File-->Paste to Workspace 命令,或在命令窗口中輸入:
uiimport -pastespecial
Example
- 導入一個文本文件的數據到MATLAB工作空間中。
Tom 100 75 85
Rob 86 92 88
Janm 93 68 97
Lily 79 90 96
- 和Excel一樣,可以選擇導入數據的分割符,可以選擇“逗號”,“空格”,“制表符”,“分號” ,也可以選中其他單選按鈕,然后在右側文本框中輸入自定義的分隔符。
- 可以選擇以何種格式導入數據,可以選擇的有“列矢量”,“數值矩陣”,“元胞數組”,“表”
- 並且這個操作步驟可以通過“導入數據”-“生成腳本”-“生成函數”等選項卡的方式重復進行。
- 使用列向量的方式讀入數據后,工作區中的變量如:
- 使用數值矩陣讀入數據后,工作區的變量如:
因為是數值矩陣所以每一行中的非數值單元格直接被省略為NaN表示不可使用數值進行操作的對象 - 使用元胞數組讀入數據后,工作區的變量如:
- 使用表讀入數據后,工作區的變量如:
導入導出MAT文件
SAVE函數
- 使用SAVE函數可以將工作空間的變量導出為二進制或者ASCII文件。可以保存工作空間中的所有變量,也可以保存指定的某些變量。將所有變量保存到filename文件中:
save filename
- 在保存指定變量時,變量名稱中可包含通配符 “ * ” 。例如,下面的命令中保存所有開頭為str的變量:
save filename str*
用 who -file filename 命令可以檢查導入到此MAT文件中的數據。
保存MATLAB文件結構體變量
load函數
- load函數可將磁盤上的二進制文件或ASCII文件導入到MATLAB工作空間:
load filename
或者直接雙擊mat文件即可將變量導入工作空間中。 - 導入指定的變量(同樣可以使用通配符 “ * ”)
load filename var1 var2 ...varn - 也可以將MAT文件中的數據導入到一個結構體中:
S=load('data.mat')