#python #pandas
#python #панды
Вопрос:
У меня проблема, как вызвать квартили. Это CSV-файл: drinksbycountry.csv Я создаю новый столбец, в котором я показываю квантиль значения из столбца: «порции пива».
df['nowa'] = pd.qcut(df['beer_servings'],6)
df.loc[1:5,['country', 'continent0','nowa' ]]
В результате:
Я не хочу иметь интервалы, подобные: (225.0, 376.0]. Я хотел бы показать: «группа 1», «группа 2», Как это сделать?
Ответ №1:
Использовать параметр labels
:
метки: массив или логическое значение, по умолчанию Нет
, используемые в качестве меток для результирующих ячеек. Должно быть той же длины, что и результирующие ячейки. Если False, возвращайте только целочисленные показатели ячеек.
df['nowa'] = 'group ' pd.qcut(df['beer_servings'],6, labels=False).astype(str)
Также возможно создавать метки в списке — например, в понимании списка с помощью f-string
s:
labels = [f'group {x}' for x in range(6)]
df['nowa'] = pd.qcut(df['beer_servings'],6, labels=labels)