① Matlab高手請指教(龐大數據讀取如何處理)
matlab讀取100萬個數據的速陪塵度很快 運算起蘆讓禪來比較慢 如果用c c++反而難編程 我的課題讀取10個圖 每個30萬個點 3色也只用了很少時間 不超過20秒 你的還不如我多吧 你才200萬個點 不過matlab計算比較慢 需要一分鍾或者更長
vb也是解釋性語言 慢 和matlab一樣 如果你追求速度 可以用matlab的mex功能 用c編寫程序 再補充數據介面 再用mex運行c程滑衡序 和m文件一樣 既快又簡單 還兼容m文件
② 如何用matlab處理excel文件中的數據
在matlab中讀取xls格式的文件內容步驟如下:
1.bb=xlsread('c:feature.xls','a0:an40'),其中:c:feature.xls為文件存放的地址,a0:a40為將要讀取的單元格的范圍.bb為讀取的矩陣在MATLAB中的變數名.
2.使用m文件腳本如下:
Excel = actxserver('Excel.Application');
set(Excel, 'Visible', 1);
Workbooks = Excel.Workbooks;
Workbook = invoke(Workbooks, 'Open', [cd,'\feature\ABC.xls']);
%% 讀取 ABC.xls:sheet1 a1(即 R1C1)~an40(即 R240c40) 范圍內的 40by40 矩陣
read_excel=ddeinit('excel','ABC.xls:sheet1');
feature1 = ddereq(read_excel, 'R1c1:R40c40');
feature1
%% 關閉ABC.xls
invoke(Excel, 'Quit');
delete(Excel);
注意:在使用時將m文件與xls文件存於同一個目錄下.另外:sheet1:可以重命名,且讀取sheet的名稱要和實際存放的名稱相同.
matlab是一個強大的處理數據的軟體,包括一些復雜的科學數據、圖像處理、office等文件格式的數據,必須學會它提供的api方法來進行讀取。
③ MATLAB數據擬合處理大量數據的實例分析
給你用一個一元情況的吧;
>>x=-1:0.2:1;
>>y=[0.841470984807897-0.717356090899523-0.564642473395035-0.3894183423086...
-0.19866933079506100.1986693307950610.389418342308650.564642473395035...0.7173560908995230.841470984807897];
如果要你想擬合成一個2次多元函數
命令為
>>p=polyfit(x,y,2)
就可以得到擬版合多項式的系數權。
還可以通過做出原圖和擬合後的效果圖,見圖1,就可以比較擬合效果,命令如下:
>>fval=polyval(p,x);
>>plot(x,fval),holdon
>>plot(x,y),holdoff
當然還有一個更為實用的方法,就是直接的應用命令polytool;
>>polytool(x,y,n)
n是你想最高次擬合為多少,如果是5,就輸入>>polytool(x,y,5)
得到的是一個含有偏差的擬合效果圖,其中圖形中的degree代表可以改變擬合次數。見圖2
④ MATlab編程求幫助 如何對數據進行處理!!!!!
是說y值大於或等於200的像素個數嗎?那很簡單:
n=sum(a>=200);