vectorization

    16熱度

    3回答

    我有兩個1000行1000列的大陣列。我需要比較這些數組的每個元素,並在相應的元素相等時將另一個數組存儲1。 我可以用for循環做這件事,但這需要很長時間。我怎樣才能更快地做到這一點?

    2熱度

    2回答

    我在MATLAB中有兩個矩陣可以說每個大小爲1000 * 1000的arr1和arr2。我想比較它們的元素和保存在結果矩陣resarr這也是1000 * 1000的比較,使得對於每個元素: 如果在arr1的元件是一個比arr2更大,將值1在結果 如果arr2元素越大,存儲的值2 ,但我不想與循環要做到這一點,因爲這是比較慢。我怎樣才能做到這一點? 編輯: 另外,如果我想不同的RGB值存儲在1000

    4熱度

    1回答

    我不太確定這是否可行,但我對MATLAB的理解肯定會更好。 我有一些代碼我希望向量化,因爲它在我的程序中造成了相當多的瓶頸。它是優化程序的一部分,它具有許多可能的短期平均(STA),長期平均(LTA)和靈敏度(OnSense)配置。 時間是以矢量形式,FL2onSS是主數據(NX1雙),FL2onSSSTA是其STA(NxSTA雙),FL2onSSThresh是其閾值(NxLTAxOnSense雙

    0熱度

    2回答

    我有一個定義了一個函數(GetDepth),它可以做一些相當平凡的事情,例如需要一個2x4矩陣並輸出一個2x1矩陣。然後我有一個2x4xn矩陣我想要應用它,我期待2x1xn矩陣結果。 將函數應用於矩陣而不訴諸循環的正確語法是什麼? ed。按照要求,這裏有我想要做的事的例子: function [bidWSize, askWSize] = getWSizes(m, bookSizeHistory)

    89熱度

    11回答

    例如,您可以對矢量中的每個項目應用函數,例如,v + 1,或者您可以使用函數arrayfun。如何在不使用for循環的情況下爲矩陣的每一行/列做到這一點?

    1熱度

    4回答

    我有一個for循環執行以下的功能: 由8矩陣以一個M和:由矩陣的8 分割成大小爲512元件的塊(意味着X == 512,並且元素的數量可以是128,256,512,1024,2048) 將塊重新整形爲1×512(元素數)矩陣。 取矩陣的最後1/4並放在前面, 例如, Data = [Data(1,385:512),Data(1,1:384)]; 以下是我的代碼: for i = 1 : NumOf

    10熱度

    6回答

    我有一堆時間序列,每個時間序列由兩個分量描述,一個時間戳向量(以秒爲單位)和一個測量值向量。時間向量是不均勻的(即以非規律間隔取樣) 我試圖計算每個1分鐘間隔值的平均值/ SD(以X分鐘間隔計算其平均值,採取下一步間隔,...)。 我目前的實現使用循環。這是我迄今爲止的樣本: t = (100:999)' + rand(900,1); %' non-uniform time x = 5*ran

    12熱度

    5回答

    有沒有辦法強制STL容器對齊到特定字節,使用屬性((對齊))也許?目標編譯器不是Microsoft Visual C++。 哪些庫(如果有的話)提供具有特定明確向量化的STL算法的專門模板,例如, SSE。我感興趣的編譯器是g ++,Intel和IBM XL。

    14熱度

    1回答

    我有一個列向量我要轉換爲一個單元陣列,例如: A = rand(10,1); B = cell(10,1); for i=1:10 B{i} = A(i); end B = [0.6221] [0.3510] [0.5132] [0.4018] [0.0760] [0.2399] [0.1233]

    9熱度

    6回答

    在Matlab中工作我有2個不同長度的x座標向量。例如: xm = [15 20 24 25 26 35 81 84 93]; xn = [14 22 26 51 55 59 70 75 89 96]; 我需要映射xm來XN,或者換句話說,找到XN負責協調最接近XM。所以如果我有與這些座標相關的值,我可以使用此地圖作爲索引並關聯這些值。 這兩個向量都是排序的,每個向量都沒有重複。 我寫了一個