Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
如果我有一组数据Y和一组以X为中心的bin,则可以使用HIST命令查找每个bin中每个Y的数量。
N = hist(Y,X) 我想知道的是,是否有一个内置函数可以告诉我每个Y进入哪个bin,所以 [N,I] = histMod(Y,X) 表示Y(I == 1)将返回bin 1中的所有Y,依此类推。 我知道如何编写此函数,所以我只是想知道MATLAB中是否已经有内置的函数可以执行此操作。 回答: 相关的功能histc做到这一点,但是它需要您定义仓边缘而不是仓中心。 Y = rand(1, 10); edges = .1:.1:1; [N, I] = histc(Y, edges); 给定二元中心的边缘也很容易计算。在一个班轮中: N = hist(Y, X); 变成 [Nc, Ic] = histc(Y, [-inf X(1:end-1) + diff(X)/2, inf]); Nc == N,最后加上一个额外的空仓(因为我假设Y中没有值匹配inf)。参见doc histc 。 更多&回答... |
![]() |
![]() |