Установка порядка столбцов в панде - PullRequest
0 голосов
/ 29 декабря 2018

У меня есть такой код со многими столбцами.Первый фрагмент этого кода предназначен для жесткой привязки порядка столбцов к конечному результату, поскольку у добавленного информационного кадра может быть другой порядок.

pd.DataFrame(columns=['foo', 'bar', 'ddd', 'ccc', 'bbb']).append(pd.DataFrame(data)) 

С более новыми версиями панд я не могу использовать sortбудучи обратно совместимым для запуска, например, в Google Colab, который использует более старую версию PANDAS.

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

Это не вопрос об этом предупреждении, которое в других местах обсуждается во многих местах:

FutureWarning: сортировка, поскольку неконкатенационная ось не выровнена.Будущая версия pandas по умолчанию изменится на не сортируемую.

Чтобы принять поведение в будущем, передайте 'sort = True'.

Вопрос в том, как поддерживать столбецпорядок, будучи обратно совместимым со старыми версиями панд.

1 Ответ

0 голосов
/ 29 декабря 2018

Для обратной совместимости я бы предложил шаг reindex перед добавлением.

df = pd.DataFrame(columns=['foo', 'bar', 'ddd', 'ccc', 'bbb'])

df.append(pd.DataFrame(data).reindex(columns=df.columns))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...