У меня есть DataFrame, содержащий текст, который разбивается на несколько строк, и я хочу объединить наборы строк с одинаковым индексом. Большую часть времени это работает. Однако в некоторых случаях вместо объединения столбцов он просто размазывает копии заголовков столбцов по всему DataFrame.
Я использую следующий код:
table = table.groupby(chosen_column).agg(lambda x: ' '.join(
x.fillna('').drop_duplicates()))
Таблица до (после некоторой обработки):
index no_header_2 no_header_3 no_header_4 no_header_3 unit_price no_header_3
0 2.0 Production Supplies 22 MAY 2019 4 text 35.66 142.64
1 2.0 Production Supplies 22 MAY 2019 4 each 35.66 142.64
2 4.0 Supplier Product Number 123456 22 MAY 2019 6 each 13.24 79.44
3 4.0 Production Supplies 22 MAY 2019 6 each 13.24 79.44
4 6.0 Supplier Product Number 234567 22 MAY 2019 3 each 21.35 64.05
5 6.0 Production Supplies 22 MAY 2019 3 each 21.35 64.05
6 8.0 Supplier Product Number 345678 22 MAY 2019 10 each 6.03 60.30
7 8.0 Production Supplies 22 MAY 2019 10 each 6.03 60.30
Таблица после (обрезается при печати) Это такжеМне не понятно, почему индекс добавляется в качестве заголовка уровня 2 и ниже напечатан в отдельной строке.
index ... no_header_3
unit_price ...
13.24 index no_header_2 no_header_3 no_header_4 no_h... ... index no_header_2 no_header_3 no_header_4 no_h...
21.35 index no_header_2 no_header_3 no_header_4 no_h... ... index no_header_2 no_header_3 no_header_4 no_h...
35.66 index no_header_2 no_header_3 no_header_4 no_h... ... index no_header_2 no_header_3 no_header_4 no_h...
6.03 index no_header_2 no_header_3 no_header_4 no_h... ... index no_header_2 no_header_3 no_header_4 no_h...
Любой совет будет оценен. Я пытаюсь выяснить, какие заголовки копируются в каждую ячейку, как это, и я пытаюсь найти правильный способ сделать это. Цель состоит в том, чтобы весь текст с одинаковым индексом был добавлен в одну ячейку с удалением дубликатов.