Есть ли удобный способ разбить массив таким образом, чтобы независимо от количества элементов в каждом разделе диапазон значений, который он содержит, был одинаковым?
Скажем, у нас есть данные в диапазоне (0, 100).Пусть размер массива будет 1000. Первые 500 элементов находятся в (0, 20), 300 элементов в (20, 40) и так далее.Я хотел бы манипулировать значениями в подразделах, разделенных на 20, 40, 60 и 80.
Данные могут выглядеть примерно так:
1st div: 0, 0, 0, ... 17, 18
2nd div: 22, 22, 24, ... 37, 39
3rd div: 40, 41, 41, ... 55, 59
4th div: 65, 68, 73, 76, 76
5th div: 93, 96
Разделить массив очень легков равных по размеру разделах по размеру раздела.Но я строю линию тренда, используя простое усреднение, и объем данных в каждом разделе варьируется.Я знаю точки разделения.
Это может быть сделано с помощью np.where
с условием, подобным arr > border1
, которое берет только первый элемент, объединяет и затем разделяет, но это похоже на длительный способ ведения дел..
Любые указатели будут с благодарностью.Я не могу быть единственным с этой проблемой.Кроме того, если другая библиотека делает подобные вещи, я, безусловно, буду готов ее использовать.