matlab讀取cvs檔案的幾種方法

2021-09-13 23:35:07 字數 2642 閱讀 9175

matlab讀取cvs檔案的幾種方法:

1,實用csvread()函式

csvread()函式有三種使用方法:

1、m = csvread('filename')

2、m = csvread('filename', row, col)

3、m = csvread('filename', row, col, range)

第一種方法中,直接輸入檔名,將資料讀到矩陣m中。這裡要求csv檔案中只能包含數字。

第二種方法中,除了檔名,還指定了開始讀取位置的行號(row)和列號(col)。這裡,行號、列號以0開始計數。也就是說,row=0, col=0表示從檔案中第乙個數開始讀。

第三種方法中,range限定了讀取的範圍。range = [r1 c1 r2 c2],這裡(r1,c1)是讀取區域的左上角,(r2,c2)是讀取區域的右下角。在使用這種方法時,要求row, col等於range中的前兩項。

注意:csv檔案中的空項,讀到矩陣中時,會初始化為0.

給定乙個csvlist.csv檔案,其內容如下

02, 04, 06, 08, 10, 12

03, 06, 09, 12, 15, 18

05, 10, 15, 20, 25, 30

07, 14, 21, 28, 35, 42

11, 22, 33, 44, 55, 66

例1.1讀取整個檔案

csvread('csvlist.csv')

ans =

2     4     6     8    10    12

3     6     9    12    15    18

5    10    15    20    25    30

7    14    21    28    35    42

11    22    33    44    55    66

例1.2讀取第2行以下,第0列以右區域的資料

m = csvread('csvlist.dat', 2, 0)

m =5    10    15    20    25    30

7    14    21    28    35    42

11    22    33    44    55    66

例1.3讀取第2行以下,第0列以右,第3行以上,第3列以左區域的資料

m = csvread('csvlist.dat', 2, 0, [2,0,3,3])

m =5    10    15    20

7    14    21    28

2、使用textscan函式

在使用textscan函式前必須用fopen函式開啟csv檔案。textscan函式讀取的結果會存在cell陣列中。

呼叫格式

c = textscan(fid, 'format')

c = textscan(fid, 'format', n)

c = textscan(fid, 'format', param, value, ...)

c = textscan(fid, 'format', n, param, value, ...)

c = textscan(str, ...)

[c, position] = textscan(...)

關於textscan函式的具體用法見help textscan。

4,使用importdata('myfile.cvs')

5,使用fgetl()函式,當成普通的txt檔案讀取。

fidin=fopen('test.txt');                               % 開啟test2.txt檔案             

fidout=fopen('mkmatlab.txt','w');                       % 建立mkmatlab.txt檔案

while ~feof(fidin)                                      % 判斷是否為檔案末尾               

tline=fgetl(fidin);                                 % 從檔案讀行   

if double(tline(1))>=48&&double(tline(1))<=57       % 判斷首字元是否是數值

fprintf(fidout,'%s\n\n',tline);                  % 如果是數字行,把此行資料寫入檔案mkmatlab.txt

continue                                         % 如果是非數字繼續下一次迴圈

endend

fclose(fidout);

mk=importdata('mkmatlab.txt');      % 將生成的mkmatlab.txt檔案匯入工作空間,變數名為mk,實際上它不顯示出來 

6,拖動到matlab的工作區內

如果檔案中全部都是資料的話,可以直接將資料拖動到matlab的工作區內。

載入後出現下面的資料列表。

在保證所有資料都被選中的情況下,在工具欄的「匯入的資料」中選擇要匯入資料的型別,如果全部為資料,則可以匯出為列向量或者數值矩陣。

matlab讀取cvs檔案的幾種方法

matlab讀取cvs檔案的幾種方法 1,實用csvread 函式 csvread 函式有三種使用方法 1 m csvread filename 2 m csvread filename row,col 3 m csvread filename row,col,range 第一種方法中,直接輸入檔名...

matlab讀取cvs檔案的幾種方法

matlab讀取cvs檔案的幾種方法 1,實用csvread 函式 csvread 函式有三種使用方法 1 m csvread filename 2 m csvread filename row,col 3 m csvread filename row,col,range 第一種方法中,直接輸入檔名...

MATLAB讀取檔案 儲存檔案

學習各種文獻 常見的開啟方式如下 r 唯讀方式開啟檔案 預設的方式 該檔案必須已存在。r 讀寫方式開啟檔案,開啟後先讀後寫。該檔案必須已存在。w 開啟後寫入資料。該檔案已存在則更新 不存在則建立。w 讀寫方式開啟檔案。先讀後寫。該檔案已存在則更新 不存在則建立。a 在開啟的檔案末端新增資料。檔案不存...