histogram vector with deltaN specified

I have a vector x
x = [1.7 2.2 1.7 3.0 2.2]
also I have a deltaN associated with each value in x
deltaN = [0.1 1.0 3.0 0.7 0.7]
How can I instruct Matlab to increase the count in bin corresponding to x(i) by deltaN(i), not 1?

回答 (2 件)

Image Analyst
Image Analyst 2017 年 10 月 22 日

0 投票

What is deltaN? You can specify the edges of the bins if that's what you're asking about. See the documentation for histogram() or histcounts().

5 件のコメント

Viesturs Veckalns
Viesturs Veckalns 2017 年 10 月 22 日
As N (counts) is the y axis, deltaN specifies how many counts must be added to that bin.
Image Analyst
Image Analyst 2017 年 10 月 22 日
Does anyone else understand this? The number of counts you add to the bin is just the number of counts you add to the bin. And that is done by histogram() or histcounts(), so is there any further problem?
Viesturs Veckalns
Viesturs Veckalns 2017 年 10 月 22 日
Instead of adding 1, specify to add 20 or 0.5 to the count
Walter Roberson
Walter Roberson 2017 年 10 月 22 日
Count regularly and then multiply the bin counts by your weights.
Viesturs Veckalns
Viesturs Veckalns 2017 年 10 月 23 日
1. The histogram will be displayed incorrectly
2. This will require me to count the weights myself
Guillaume
Guillaume 2017 年 10 月 23 日

0 投票

There are no weighted histogram function in matlab as far as I know. It's not really hard to implement:
x = [1.7 2.2 1.7 3.0 2.2];
deltaN = [0.1 1.0 3.0 0.7 0.7];
[~, ~, bin] = histcounts(x); %add whichever option you want to histcount
h = accumarray(bin', deltaN')

この質問は閉じられています。

タグ

質問済み:

2017 年 10 月 22 日

閉鎖済み:

2021 年 8 月 20 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by