Пусть я Binned некоторые данные в структуре, как это:биннинговые данные включительно результат
data = {(1,1): [...] # list of float,
(1,2): [...],
(1,3): [...],
(2,1): [...],
... }
здесь Я только две оси для биннинга, но предположим, что я имею N из них. Теперь предположим, что, например, у меня есть N = 3 оси, и я хочу, данные, где второй бункер 1, так что я хочу есть функция
(None, 1, None) -> [(1, 1, 1), (1, 1, 2), (1, 1, 3), ...
(2, 1, 1), (2, 1, 2), (2, 1, 3), ...]
так что я могу использовать itertools.chain
для результата
вы знаете диапазон каждую ось от:
axes_ranges = [(1, 10), (1, 8), (1, 3)]
других примеров:
(None, 1, 2) -> [(1, 1, 2), (2, 1, 2), (3, 1, 2), ...]
(None, None, None) -> all the combinations
(1,2,3) -> [(1,2,3)]
это здорово, проблемы теперь в 2: 1. как перевести '(None, 1, 1)' to x [:, 1 , 1]? Какими символами являются ':'? 2. Мои данные не являются int (или float): для каждого бина у меня есть коллекция (список) поплавков –
- это списки с плавающей точкой равной длины? – Schuh
нет, они не –