我一直无法在 matlab 或 octave 中找到一个函数来做我想做的事。我有一个包含两列(x 和 y 值)的矩阵 m。我知道我可以通过执行 m(:,1) 或 m(:,2) 来提取列。我想将其拆分为 [可能] 大小相等的较小矩阵,并绘制这些矩阵的平均值。换句话说,我想根据 x 值将值放入 bin 中,然后找到 bin 的平均值。我觉得 hist 函数应该对我有帮助,但似乎没有。
有谁知道一个内置函数来做这样的事情?
编辑
我本来打算提到我看着 hist 并不能让它做我想做的事,但它一定是我的想法。
示例:假设我有以下内容(我正在八度音阶中尝试这个,但是 afaik 它在 matlab 中有效):
x=1:20;
y=[1:10,10:1];
m=[x, y];
如果我想要 10 个垃圾箱,我希望将 m 分成:
m1=[1:2, 1:2]
...
m5=[9:10, 9:10]
m6=[10:11, 10:-1:9]
...
m10=[19:20, 2:-1:1]
然后得到每个 bin 的平均值。
更新:我在这里发布了一个后续问题。我将不胜感激。