簡體   English   中英

在每個 bin 中進行歸一化的直方圖(matlab)

[英]histogram with normalization in each bin (matlab)

我有兩個 arrays

A = rand(40,1)
B = rand(40,1)

我正在嘗試用 10 個 bin 獲得A的直方圖,即

[count,center] = hist(A,10)

我的問題是,對於A的每個 bin,我需要除以B與 A 具有相同索引的元素的總和,例如,如果A條目 1 和條目 5 進入直方圖的第A bin A ,我需要通過數組B的條目 1 和 5 的總和來標准化 bin 的中心。 如果可能有一種有效的方法來確定A中的索引與直方圖對應的 bin 之間的映射,那么,可能會對此有所幫助嗎?

謝謝

要找到屬於哪個 bin 數據,我建議遷移到histogram function,因為它會為您提供實際邊界。 我下面的 MATLAB 代碼將在 A 中添加第二行,第一行屬於哪個 bin

A = randi(20,[1 15])

X = histogram(A,10)

% trim most right hand edge
leftEdge = X.BinEdges(1:end-1)

% initialize bin index
A(2,:) = 0


for k1 = 1:length(leftEdge)
    A(2,:) = A(2,:) + (A(1,:) >= leftEdge(k1));
end

disp(A)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM