Изменение порядка столбцов в кадре данных pandas на основе даты столбца - PullRequest
0 голосов
/ 19 июня 2019

как отсортировать заголовок сводной таблицы pandas по порядку месяца и года, а не по алфавиту?

текущий порядок в алфавитном порядке по названию месяца, я бы хотел быть впорядок месяца и года

1 Ответ

0 голосов
/ 19 июня 2019

Я пытался смоделировать вашу проблему и найти это решение.Здесь у меня есть набор данных с двумя столбцами (YearMonth и Sales), и я сортирую данные по столбцу YearMonth перед тем, как повернуть данные.Сортировка помогает нам иметь столбцы YearMonth в необходимом порядке после разворота.Проверьте приведенный ниже код:

import pandas as pd

data = pd.DataFrame([[201801,2000.00],[201809,4000.00],[201803,10000.00],[201806,12000.00],[201802,20000.00],[201811,2000.00]],columns=['YearMonth','Sales'])
print('Original data:')
print(data)

data = data.sort_values(by=['YearMonth'])
print('Sort data on Year Month column:')
print(data)

print('Pivot data:')
print(data.pivot(columns='YearMonth',values=['Sales']))

Вывод: исходные данные

   YearMonth    Sales
0     201801   2000.0
1     201809   4000.0
2     201803  10000.0
3     201806  12000.0
4     201802  20000.0
5     201811   2000.0

Сортировка данных по столбцу Год-месяц:

   YearMonth    Sales
0     201801   2000.0
4     201802  20000.0
2     201803  10000.0
3     201806  12000.0
1     201809   4000.0
5     201811   2000.0

Сводные данные:

            Sales                                           
YearMonth  201801   201802   201803   201806  201809  201811
0          2000.0      NaN      NaN      NaN     NaN     NaN
1             NaN      NaN      NaN      NaN  4000.0     NaN
2             NaN      NaN  10000.0      NaN     NaN     NaN
3             NaN      NaN      NaN  12000.0     NaN     NaN
4             NaN  20000.0      NaN      NaN     NaN     NaN
5             NaN      NaN      NaN      NaN     NaN  2000.0

Надеюсь, это может помочь вам решить вашу проблему.

...