小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

matlab mat文件怎樣讀取和怎樣調(diào)用。。

 walisef 2014-05-07
13.1 數(shù)據(jù)基本操作

  本節(jié)介紹基本的數(shù)據(jù)操作,包括工作區(qū)的保存、導(dǎo)入和文件打開(kāi)。

13.1.1 文件的存儲(chǔ)

  MATLAB支持工作區(qū)的保存。用戶(hù)可以將工作區(qū)或工作區(qū)中的變量以文件的形式保存,以備在需要時(shí)再次導(dǎo)入。保存工作區(qū)可以通過(guò)菜單進(jìn)行,也可以通過(guò)命令窗口進(jìn)行。

  1. 保存整個(gè)工作區(qū)

  選擇File菜單中的Save Workspace As…命令,或者單擊工作區(qū)瀏覽器工具欄中的Save,可以將工作區(qū)中的變量保存為MAT文件。

  2. 保存工作區(qū)中的變量

  在工作區(qū)瀏覽器中,右擊需要保存的變量名,選擇Save As…,將該變量保存為MAT文件。

  3. 利用save命令保存

  該命令可以保存工作區(qū),或工作區(qū)中任何指定文件。該命令的調(diào)用格式如下:

● save:將工作區(qū)中的所有變量保存在當(dāng)前工作區(qū)中的文件中,文件名為 matlab.mat,MAT文件可以通過(guò)load函數(shù)再次導(dǎo)入工作區(qū),MAT函數(shù)可以被不同的機(jī)器導(dǎo)入,甚至可以通過(guò)其他的程序調(diào)用。

● save('filename'):將工作區(qū)中的所有變量保存為文件,文件名由filename指定。如果filename中包含路徑,則將文件保存在相應(yīng)目錄下,否則默認(rèn)路徑為當(dāng)前路徑。

● save('filename', 'var1', 'var2', ...):保存指定的變量在 filename 指定的文件中。

● save('filename', '-struct', 's'):保存結(jié)構(gòu)體s中全部域作為單獨(dú)的變量。

● save('filename', '-struct', 's', 'f1', 'f2', ...):保存結(jié)構(gòu)體s中的指定變量。

● save('-regexp', expr1, expr2, ...):通過(guò)正則表達(dá)式指定待保存的變量需滿足的條件。

● save('..., 'format'),指定保存文件的格式,格式可以為MAT文件、ASCII文件等。

13.1.2 數(shù)據(jù)導(dǎo)入

  MATLAB中導(dǎo)入數(shù)據(jù)通常由函數(shù)load實(shí)現(xiàn),該函數(shù)的用法如下:

● load:如果matlab.mat文件存在,導(dǎo)入matlab.mat中的所有變量,如果不存在,則返回error。

● load filename:將filename中的全部變量導(dǎo)入到工作區(qū)中。

● load filename X Y Z ...:將filename中的變量X、Y、Z等導(dǎo)入到工作區(qū)中,如果是MAT文件,在指定變量時(shí)可以使用通配符“*”。

● load filename -regexp expr1 expr2 ...:通過(guò)正則表達(dá)式指定需要導(dǎo)入的變量。

● load -ascii filename:無(wú)論輸入文件名是否包含有擴(kuò)展名,將其以ASCII格式導(dǎo)入;如果指定的文件不是數(shù)字文本,則返回error。

● load -mat filename:無(wú)論輸入文件名是否包含有擴(kuò)展名,將其以mat格式導(dǎo)入;如果指定的文件不是MAT文件,則返回error。

例13-1 將文件matlab.map中的變量導(dǎo)入到工作區(qū)中。

  首先應(yīng)用命令whos –file查看該文件中的內(nèi)容:

  >> whos -file matlab.mat

   Name                  Size              Bytes Class

   A                    2x3              48 double array

   I_q                 415x552x3            687240 uint8 array

   ans                1x3               24 double array

   num_of_cluster       1x1               8 double array

  Grand total is 687250 elements using 687320 bytes

  將該文件中的變量導(dǎo)入到工作區(qū)中:

  >> load matlab.mat

  該命令執(zhí)行后,可以在工作區(qū)瀏覽器中看見(jiàn)這些變量,如圖13-1所示。



圖13-1 導(dǎo)入變量后的工作區(qū)視圖

  接下來(lái)用戶(hù)可以訪問(wèn)這些變量。

  >> num_of_cluster

  num_of_cluster =

       3

  MATLAB中,另一個(gè)導(dǎo)入數(shù)據(jù)的常用函數(shù)為importdata,該函數(shù)的用法如下:

● importdata('filename'),將filename中的數(shù)據(jù)導(dǎo)入到工作區(qū)中;

● A = importdata('filename'),將filename中的數(shù)據(jù)導(dǎo)入到工作區(qū)中,并保存為變量A;

● importdata('filename','delimiter'),將filename中的數(shù)據(jù)導(dǎo)入到工作區(qū)中,以delimiter指定的符號(hào)作為分隔符;

例13-2 從文件中導(dǎo)入數(shù)據(jù)。

  >> imported_data = importdata('matlab.mat')

  imported_data =

                 ans: [1.1813 1.0928 1.6534]

                   A: [2x3 double]

                 I_q: [415x552x3 uint8]

      num_of_cluster: 3

  與load函數(shù)不同,importdata將文件中的數(shù)據(jù)以結(jié)構(gòu)體的方式導(dǎo)入到工作區(qū)中。

13.1.3 文件的打開(kāi)

  MATLAB中可以使用open命令打開(kāi)各種格式的文件,MATLAB自動(dòng)根據(jù)文件的擴(kuò)展名選擇相應(yīng)的編輯器。

   需要注意的是open('filename.mat')和load('filename.mat')的不同,前者將filename.mat以結(jié)構(gòu)體的方式打開(kāi)在工作區(qū)中,后者將文件中的變量導(dǎo)入到工作區(qū)中,如果需要訪問(wèn)其中的內(nèi)容,需要以不同的格式進(jìn)行。

   

例13-3 open與load的比較。

  >> clear

  >> A = magic(3);

  >> B = rand(3);

  >> save

  Saving to: matlab.mat

  >> clear

  >> load('matlab.mat')

  >> A

  A =

       8     1     6

       3     5     7

       4     9     2

  >> B

  B =

      0.9501    0.4860    0.4565

      0.2311    0.8913    0.0185

      0.6068    0.7621    0.8214

  >> clear

  >> open('matlab.mat')

  ans =

      A: [3x3 double]

      B: [3x3 double]

  >> struc1=ans;

  >> struc1.A

  ans =

       8     1     6

       3     5     7

       4     9     2

  >> struc1.B

  ans =

      0.9501    0.4860    0.4565

      0.2311    0.8913    0.0185

      0.6068    0.7621    0.8214

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多