Re: [問題]新手請教 matlab 做資料處理的問題已回收

看板MATLAB作者時間16年前 (2009/07/31 17:20), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/3 (看更多)
※ 引述《billyhsieh ( 'RF ,)》之銘言: :   因為研究的資料 有100多萬筆資料 :   必須對其中的兩個欄位作判斷,利用判斷後的資料再跑maxima likelihood的 :   估計值 :   可是我光前面的對欄位的判斷,電腦就跑到matlab自己關 (跑了好幾個小時) :   .M 我是這樣寫 (date and P 都是 100萬*1的vector, X 是1*1值) :    :   function J =SBJudge (date,P,X) :   temp='n' :   for i=2:X :    if strcmp(date(i), date (i-1)) : if P(i) >P(i-1) : J(i,1)='b' : temp='b' : elseif P(i) <P(i-1) : J(i,1)='s' : temp='s' : else P(i) == P(i-1) : J(i,1)= temp : end :  else : J(i,1)='n' :  end :  end :    :   指令: SBJudge(date,P,1000000) : 請問一下各位先進,跑了半天最後matlab自己close的這種問題 :   是因為 我程式寫錯,還是電腦等級不好問題 :   或是說matlab不適合跑這種百萬筆的資料處理,得先用資料庫將資料先處理 :    :   感謝 function J=SBJudge(date,P,X) J='n'; J=repmat(J,X,1); tmp=date(2:end)-date(1:end-1); ind=find(tmp==0)+1; tmp2=P(ind)-P(ind-1); J(find(tmp2>0)+1)='b'; J(find(tmp2<0)+1)='s'; 沒測試過,自己試試看 另外不曉得你的date存的格式是怎樣的字串 我把它當數字來寫 可以自己改改看 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.129.77.9
文章代碼(AID): #1AShTdAz (MATLAB)
文章代碼(AID): #1AShTdAz (MATLAB)