Переиндексация действительна только для индексных объектов с уникальным значением.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Переиндексация действительна только для индексных объектов с уникальным значением.

Сообщение Anonymous »

Уже есть несколько статей об этой проблеме, но ни одна из них не решает мою проблему.
У меня есть два набора фреймов данных Python (df_A1, df_A2 и df_B1, df_B2) и Я хочу объединить А вместе и Б вместе. Я могу легко соединить A, но B выдает мне ошибку «Переиндексация действительна только для индексных объектов с уникальным значением». Есть несколько причин, которые я нашел в Интернете, но они мне не подходят.
  • Повторяющиеся имена столбцов.
    Б. В кадрах данных действительно есть столбцы с одинаковыми именами, но в кадрах данных A это тоже есть, и с этим все работает отлично. Так что это не должно быть проблемой в одном и том же коде. Кроме того, я использовал df.index.is_unique, который возвращает True для всех фреймов данных, но, конечно, df.columns.is_unique возвращает False.
  • Пусто имена столбцов.
    У меня тоже так было, и я убедился, что все пустые имена столбцов теперь заполняются с помощью [item или '_empty_' для элемента в ]
  • Использование ignore_index=True.
    Сделано ли это для A и B, A все еще работает с concat, а B все еще не работает т.
У меня есть обратная связь здесь:

Код: Выделить всё

Traceback (most recent call last):

File ~\AppData\Local\anaconda3\Lib\site-packages\spyder_kernels\customize\utils.py:209 in exec_encapsulate_locals
exec_fun(compile(code_ast, filename, "exec"), globals)

File c:\
\python_script.py:168
df_B = pd.concat([df_B1 , df_B2], axis=0, ignore_index=True)

File ~\AppData\Local\anaconda3\Lib\site-packages\pandas\core\reshape\concat.py:395 in concat
return op.get_result()

File ~\AppData\Local\anaconda3\Lib\site-packages\pandas\core\reshape\concat.py:680 in get_result
indexers[ax] = obj_labels.get_indexer(new_labels)

File ~\AppData\Local\anaconda3\Lib\site-packages\pandas\core\indexes\base.py:3885 in get_indexer
raise InvalidIndexError(self._requires_unique_msg)

InvalidIndexError: Reindexing only valid with uniquely valued Index objects
Есть ли у кого-нибудь идеи, как это исправить?


Подробнее здесь: https://stackoverflow.com/questions/792 ... ex-objects
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»