РЕДАКТИРОВАТЬ: этот вопрос возник с пандами ~ 0,13 и был устарел прямой поддержкой где-то между версиями 0,15-0,18 (в соответствии с поздним ответом @Cireo)
Я могу получить boxplot
из столбца зарплаты в панде DataFrame...
train.boxplot(column='Salary', by='Category', sym='')
... однако я не могу понять, как определить порядок индекса, используемый в столбце "Категория" - я хочу указать свой собственный заказ в соответствии с другим критерием:
category_order_by_mean_salary = train.groupby('Category')['Salary'].mean().order().keys()
Как я могу применить свой собственный порядок столбцов к столбцам коробчатого графика? (кроме уродливой путаницы имен столбцов с префиксом для принудительного упорядочения)
"Категория" - это строка (на самом деле, она должна быть категориальной, но это было в столбце 0.13, где категоричным был гражданин третьего класса), принимая 27 различных значений: ['Accounting & Finance Jobs','Admin Jobs',...,'Travel Jobs']
. Так что это легко можно pd.Categorical.from_array()
с помощью pd.Categorical.from_array()
При проверке ограничение находится внутри pandas.tools.plotting.py:boxplot()
, который преобразует объект столбца без упорядочения:
- pandas.core.frame.py.boxplot() - это переход к
- pandas.tools.plotting.py:boxplot(), который создает экземпляры...
- matplotlib.pyplot.py:boxplot(), который создает экземпляры...
- matplotlib.axes.py:boxplot()
Я полагаю, что я могу либо взломать пользовательскую версию pandas boxplot(), либо достучаться до внутреннего объекта. А также подайте запрос на расширение.