Данные биннинга с перекрывающимися бинами

Мне нужно данные ветра

Идея состоит в том, чтобы изменить размер бункеров ветра, чтобы каждый бин мог покрыть минимальное количество данных. Затем в конце у меня будет 360 перекрывающихся бункеров.

Поэтому необходимо определить нижний и верхний пределы бункеров и впоследствии изменить верхний предел в соответствии с данными, попадающими в разные бункеры.

np.digitize, кажется, работает только с одномерными ячейками

так что это была моя попытка:

import numpy as np
from scipy.stats import binned_statistic

#initially equal size bins[[lower limit], [upper limit]]
bins=np.array([[np.arange(0,360)], [np.arange(1,361)]])

#dfIn is a vector with angles from 0 to 360
index_Rdir= binned_statistic(dfIn, dfIn, bins=bins)

затем остальная часть алгоритма, в которой вычисляется частота данных в каждом бине, а верхний предел бина увеличивается для тех бинов, которые не получают минимальное количество данных...

при попытке биннинга с binned_statistic вывести следующую ошибку

ValueError: cannot copy sequence with size 2973 to array axis with dimension 3

Если вместо одного массива для бинов я пытаюсь использовать список, я получаю похожую ошибку.

Я пытался также с np.histogram, так как в соответствии с документацией допускается неравномерный размер корзины

index_Rdir= np.histogram(dfIn,  bins=bins)

all the input arrays must have same number of dimensions

0 ответов

Другие вопросы по тегам