Панды "Может сравнивать только идентично помеченные объекты DataFrame", сравнивая идентичные кадры данных. - PullRequest
0 голосов
/ 07 декабря 2018

Я пытаюсь сравнить два кадра данных в Python.Фреймы данных имеют одинаковые метки, но данные внутри смешаны, поэтому мне нужно отсортировать их по одному ключевому столбцу.Проблема появляется после использования функции «sort_values».

Этот код работает, но я получаю FALSE, потому что данные упорядочены по-разному:

l1 = l1.reindex(sorted(change.columns), axis=1)
l2 = l2.reindex(sorted(change.columns), axis=1)
# l1.sort_values("PPID", inplace=True, axis=0, ascending=True)
# l2.sort_values("PPID", inplace=True, axis=0, ascending=True)
print(l1 == l2)

Этот код должен работать на мой взгляд, данные отсортированы по "PPID",Ярлыки по-прежнему выглядят одинаково, но я получаю сообщение об ошибке:

l1 = l1.reindex(sorted(change.columns), axis=1)
l2 = l2.reindex(sorted(change.columns), axis=1)
l1.sort_values("PPID", inplace=True, axis=0, ascending=True)
l2.sort_values("PPID", inplace=True, axis=0, ascending=True)
print(l1 == l2)

Сообщение об ошибке:

ValueError: Можно сравнивать только объекты DataFrame с одинаковыми метками

Что вызывает эту ошибку?Есть ли другой способ сортировки по столбцу или для сравнения двух фреймов данных?

1 Ответ

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

Я думаю, что кадры данных идентично помечены, но это не так..sort_values ​​сортировал четные индексы строк, поэтому один фрейм данных имел 1,2,3,4,5,6 и т. д., а другой - 6,3,2,4,5,1 ... После того, как я изменил индексы, я смогсравнить DF.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...