Binning в matlab

Вероятно, это из-за неопределенного поведения в выражениях типа:

a, b += 1, a

Как это должно быть оценено? Как это

a' = a + 1
b = b + a'

или просто

b = b + a
a = a + 1

- неясно. Таким образом, деструктурированное расширенное назначение не допускается.

11
задан Community 23 May 2017 в 12:24
поделиться

1 ответ

Я ответил на это в видео форме на моем блоге:

http://blogs.mathworks.com/videos/2009/01/07/binning-data-in-matlab/

Вот код:

m = rand(10,2); %Generate data

x = m(:,1); %split into x and y
y = m(:,2);

topEdge = 1; % define limits
botEdge = 0; % define limits
numBins = 2; % define number of bins

binEdges = linspace(botEdge, topEdge, numBins+1);

[h,whichBin] = histc(x, binEdges);

for i = 1:numBins
    flagBinMembers = (whichBin == i);
    binMembers     = y(flagBinMembers);
    binMean(i)     = mean(binMembers);
end
19
ответ дан 3 December 2019 в 06:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: