大學生設計方案MATLAB在數(shù)據(jù)處理中應用_第1頁
大學生設計方案MATLAB在數(shù)據(jù)處理中應用_第2頁
大學生設計方案MATLAB在數(shù)據(jù)處理中應用_第3頁
大學生設計方案MATLAB在數(shù)據(jù)處理中應用_第4頁
大學生設計方案MATLAB在數(shù)據(jù)處理中應用_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、MATLAB在數(shù)據(jù)處理中的應用(趙希希 電混1班)摘要:MATLAB是一種科學計算軟件,在工程計算、理論分析、實驗仿真等領域內發(fā)揮著巨大的作用。本文對MATLAB軟件進行了簡單的介紹,指出其特點、基本計算方法。并通過幾個實例,說明該軟件在數(shù)據(jù)處理中的強大應用。關鍵詞:MATLAB;數(shù)據(jù)處理;數(shù)據(jù)統(tǒng)計;數(shù)據(jù)插值;數(shù)據(jù)擬合MATLAB是Math Works公司于1982年推出的一套高性能的數(shù)值計算和可視化軟件,它集數(shù)值分析、矩陣運算、信號處理和圖形顯示于一體,構成了一個方便且界面友好的用戶環(huán)境。MATLAB強大的計算能力和無與倫比兼容性,使得它能在數(shù)學科目以外的專業(yè)繼續(xù)發(fā)揮它的作用,如數(shù)據(jù)處理、非

2、線性電路等方面。數(shù)值計算在科學研究與工程應用中有非常廣泛的應用。許多數(shù)值計算問題,用其他程序設計語言編程求解非常麻煩,并且需要具備專門的數(shù)學知識及一定得程序設計技能,而且MATLAB編程,往往只要少數(shù)幾個語句即可完成求解任務,具有編程效率高、使用方便等特點。MATLAB這種強大的數(shù)值計算能力,使其成為在科學計算方面的首選解題工具。在科學實驗與工程測量中,經(jīng)常會遇到大量的數(shù)據(jù)處理問題,而這些大量的數(shù)據(jù)處理往往會令人十分頭疼,容易因為粗心導致出錯。我們把這些復雜、大量的數(shù)據(jù)交給MATLAB去處理就方便多了。數(shù)據(jù)處理包括數(shù)據(jù)統(tǒng)計、數(shù)據(jù)插值、曲線擬合。一、數(shù)據(jù)統(tǒng)計數(shù)據(jù)統(tǒng)計問題一般包括求矩陣最大、最小元

3、素,求矩陣平均值和中值, 矩陣元素求和、求積,矩陣元素累加和與累乘積,求標準方差、相關系數(shù)、元素排序等。它們都有相應的調用格式:求矩陣最大、最小元素的調用格式max(A):返回一個行向量,Y向量的第i個元素是A矩陣的第i列上的最大元素。Y,U=max(A):返回兩個行向量,Y向量記錄A的每列的最大元素,U向量記錄每列最大元素的行號。max(A, ,dim):dim取1或2。dim取1時,該函數(shù)和max(A)完全相同。Dim取2時,該函數(shù)返回一個列向量,其第i個元素是A矩陣的第i行上的最大元素。U=max(A,B):A、B是兩個同型的向量或矩陣。結果U是與A、B同型的向量或矩陣,U的每個元素等于

4、A、B對應元素的較大者。U=max(A,n):n是一個標量。結果U是與A同型的向量或矩陣,U的每個元素等于A對應元素和max完全相同。min函數(shù)的用法和max完全相同。求矩陣平均值和中值的調用格式求矩陣和向量元素的平均值的函數(shù)是mean,求中值的函數(shù)是median。設X是一個向量,A是一個矩陣,兩個函數(shù)的用法如下:mean(X):返回向量X的算術平均值。median(X):返回向量X的中值。mean(A):返回一個行向量,其第i個元素是A的第i列的算數(shù)平均值。medianA):返回一個行向量,其第i個元素是A的第i列的中值。mean(A,dim):當dim為1時,該函數(shù)等同于mean(A);當

5、dim為2時,返回一個列向量,其第i個元素是A的第i行的算術平均值。median A,dim):當dim為1時,該函數(shù)等同于median(A);當dim為2時,返回一個列向量,其第i個元素是A的第i行的中值。矩陣元素求和、求積的調用格式矩陣和向量求和與求積的基本函數(shù)是sum和prod,其使用方法類似。設X是一個向量,A是一個矩陣,函數(shù)的調用格式為:sum(X):返回向量X各元素的和。prod(X):返回向量X各元素的乘積。sum(A):返回一個行向量,其第i個元素是A的第i列的元素和。prod(A):返回一個行向量,其第i個元素是A的第i列的元素乘積。sum(A,dim):當dim為1時,該函

6、數(shù)等同于sum(A);當dim為2時,返回一個列向量,其第i個元素是A的第i行元素的各元素和。prod(A,dim):當dim為1時,該函數(shù)等同于prod(A);當dim為2時,返回一個列向量,其第i個元素是A的第i行元素的各元素乘積。求矩陣元素累加和與累乘積的調用格式在MATLAB中,使用cumsum和cumprod函數(shù)能方便地求的向量和矩陣的累加和與累乘積向量,函數(shù)的調用格式為:cumsum(X):返回向量X累加和向量。cumprod(X):返回向量X累乘積向量。cumsum(A);返回一個矩陣,其第i列是A的第i列的累加和向量。cumprod(A);返回一個矩陣,其第i列是A的第i列的累

7、乘積向量。cumsum(A,dim);當dim為1時,該函數(shù)等同于cumsum(A);當dim為2時,返回一個矩陣,其第i行是A的第i行的累加和向量cumprod(A,dim);當dim為1時,該函數(shù)等同于cumsum(A);當dim為2時,返回一個矩陣,其第i行是A的第i行的累乘積向量。求標準方差的調用格式對于具有N個元素的數(shù)據(jù)序列x1,x2,x3,x N,標準方差的計算公式如下:或其中對于向量X,std(X)返回一個標準方差。對于矩陣A,std(A)返回一個行向量,它的各個元素便是矩陣A各列或各行的標準方差。std函數(shù)一般點用格式為:std(A,flag,dim)其中dim取1或2。當di

8、m=1時,求各列元素的標準方差;當dim=2時,則求各行元素的標準方差。flag取0或1,當flag=0時,按S1所列公式計算標準方差;當flag=1時,按S2所列公式計算標準方差。默認flag=0,dim=1。相關系數(shù)的調用格式對于兩組數(shù)據(jù)數(shù)列xi、yi(i=1,2,n),可以由下式計算出兩組數(shù)據(jù)的相關系數(shù):corrcoef函數(shù)的調用格式為:corrcoef(X):返回從矩陣X形成的一個相關系數(shù)矩陣此相關系數(shù)矩陣的大小與矩陣X一樣。它把矩陣X的每列作為一個變量,然后求它們的相關系數(shù)。corrcoef(X,Y):在這里,X、Y是向量,它們的作用與corrcoef(X,Y)中一樣。元素排序的調用

9、格式MATLAB中對向量X排序函數(shù)是sort(X),函數(shù)返回一個對X中的元素按升序排序的新向量。sort函數(shù)也可以對矩陣A的各列(或行)重新排序,其調用格式為;Y,I=sort(A,dim)其中dim指明對A的列還是行進行排序,若dim=1,則按列排;若dim=2, 則按行排。Y是排序后的矩陣,而I記錄Y中的元素在A中位置。這里我們舉幾個例子說明一下:例1 求矩陣A的每行及每列的最大元素,并求整個矩陣的最小元素。命令如下:A=12,45,58。25,60,-45。56,25,178。2,0,-13。max(A,2) %求每行最大元素ans =58601782max(A) %求每列最大元素ans

10、 =56 60 178min(min(A) %求整個矩陣的最小元素。也可用命令:min(A(:)ans =-45例2 求向量x的平均和中值。命令如下: x=10,24,6,-8,0,-12。 %偶數(shù)個元素mean(x) %求此向量的平均值x =10 24 6 -8 0 -12ans =3.3333median(x) %求此向量的中值ans =3例3 對下列矩陣做各種排序。命令如下:A=0,-11,5。1,15,7。16,9,-20。sort(A) %對A的每列按升序排序ans =0 -11 -201 9 516 15 7-sort(-A,2) %對A的每行按降序排列ans =5 0 -1115

11、 7 116 9 -20X,I=sort(A) %對A按列排序,并將每個元素所在行號送矩陣I X =0 -11 -201 9 516 15 7I =1 1 32 3 13 2 2二、數(shù)據(jù)插值和數(shù)據(jù)擬合插值和擬合都是數(shù)據(jù)優(yōu)化的一種方法,當實驗數(shù)據(jù)不夠多時經(jīng)常需要用到這種方法來畫圖。在MATLAB中都有特定的函數(shù)來完成這些功能。這兩種方法的確別在于:當測量值是準確的,沒有誤差時,一般用插值;當測量值與真實值有誤差時,一般用數(shù)據(jù)擬合。下面對插值和擬合這兩種數(shù)據(jù)處理的方法進行一下比較。插值:對于一維曲線的插值,一般用到的函數(shù)yi=interp1(X,Y,xi,method) ,其中method包括ne

12、arst,linear,spline,cubic。對于二維曲面的插值,一般用到的函數(shù)zi=interp2(X,Y,Z,xi,yi,method),其中method也和上面一樣,常用的是cubic。擬合:對于一維曲線的擬合,一般用到的函數(shù)p=polyfit(x,y,n)和yi=polyval(p,xi),這個是最常用的最小二乘法的擬合方法。對于二維曲面的擬合,有很多方法可以實現(xiàn),這里運用Spline Toolbox里面的函數(shù)功能。舉例說明二維曲面的插值和擬合。例4 原始數(shù)據(jù)x=1:1:15。y=1:1:5。z=0.2 0.24 0.25 0.26 0.25 0.25 0.25 0.26 0.26

13、 0.29 0.25 0.29。0.27 0.31 0.3 0.3 0.26 0.28 0.29 0.26 0.26 0.26 0.26 0.29。0.41 0.41 0.37 0.37 0.38 0.35 0.34 0.35 0.35 0.34 0.35 0.35。0.41 0.42 0.42 0.41 0.4 0.39 0.39 0.38 0.36 0.36 0.36 0.36。0.3 0.36 0.4 0.43 0.45 0.45 0.51 0.42 0.4 0.37 0.37 0.37。z是一個5乘12的矩陣。直接用原始數(shù)據(jù)畫圖如下:surf(x,y,z)title(Original

14、data Plot)。xlabel(X), ylabel(Y), zlabel(Z),colormap, colorbar。axis(0 15 0 6 0.150.55先考慮插值,需要用到的函數(shù)interp2。x1=1:0.2:12。y1=1:0.2:5。x2,y2=meshgrid(x1,y1)。t11=interp2(x,y,z,x2,y2,cubic)。surf(x1,y1,t11)title(After Fit data Plot)。xlabel(X), ylabel(Y), zlabel(Z),colormap, colorbar。axis(0 15 0 6 0.2 0.55)然后考

15、慮擬合:ky = 3。 knotsy = augknt(0:2.5:13,ky)。sp = spap2(knotsy,ky,y,z)。yy = 0:.5:12。 vals = fnval(sp,yy)。coefsy = fnbrk(sp,c)。kx = 5。 knotsx = augknt(1:4:5,kx)。sp2 = spap2(knotsx,kx,x,coefsy.)。coefs = fnbrk(sp2,c).。xv = 1:.25:5。 yv = 1:.5:12。valuesspcol(knotsx,kx,xv)*coefs*spcol(knotsy,ky,yv).。surf(yv,x

16、v,values)title(After Polynal data Plot)。xlabel(X), ylabel(Y), zlabel(Z)。colormap, colorbar。axis(0 15 0 6 0.2 0.55)(注:圖上面的小圓點是原始數(shù)據(jù)點,使用plot3畫出,需要把不等邊矩陣轉換成等邊矩陣然后再畫圖。)效果如以上三圖所示,如果測量值比較精確,我們選擇第二種方法插值法來畫圖,如果覺得測量值不是很精確,需要用擬合的方法,即第三種方法??偨Y與心得本文通過論述MATLAB在數(shù)據(jù)處理中的應用,充分體現(xiàn)了采用MATLAB對測量數(shù)據(jù)進行處理是簡便、快捷和直觀的。工程與科研中大量的統(tǒng)計問題運用MATLAB解決起來即高效又準確;多項式插值則在信號處理與圖像處理上應用較為廣泛;根據(jù)最小二乘原理擬合出的圖形可供實驗報告中采用或手工計算時查找,得出的多項式可供理論分析或產(chǎn)品的CAD中使用,而該方法同樣適合于其它行業(yè)中圖表曲線的處理,而且能滿足工程的精度要求。在歷時兩周的課

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論