Когда я пытаюсь запустить pd.cut со списком бинов, который содержит дубликаты ([0. , 0. , 0.2, 0.4, 0.6, 0.8, 1. ]
), он возвращает следующее:
ValueError: Bin edges must be unique: array([0. , 0. , 0.2, 0.4, 0.6, 0.8, 1. ]).
You can drop duplicate edges by setting the 'duplicates' kwarg
Однако, когда я добавляю duplicates='drop'
(например,доступно для qcut), я получаю
TypeError: cut() got an unexpected keyword argument 'duplicates'
Оригинальная ошибка ValueError просто вводит в заблуждение, потому что дублирование на самом деле не реализовано для вырезки, или я делаю что-то не так?Я на версии 0.22.Я мог вручную контролировать дубликаты перед вызовом pd.cut, но хотел использовать существующую функциональность pandas, если она существует.
Игрушечные данные / пример для работы:
df = pd.DataFrame({"a":[0, 1, 0.18, 0.2, 0.38, 0.58, 0.78, 0.98]})
bad_bins = [0., 0., 0.2, 0.4, 0.6, 0.8, 1.0]
pd.cut(df['a'], bins=bad_bins)
pd.cut(df['a'], bins=bad_bins, duplicates='drop')