[英]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.