У меня есть объект DataFrame от pandas, где каждая строка представляет один объект на изображении.
Один пример возможной строки:
{'img_filename': 'img1.txt', 'img_size':'20', 'obj_size':'5', 'obj_type':'car'}
Я хочу объединить все объекты, принадлежащие одному и тому же изображению, и получить что-то, чьи строки будут выглядеть так:
{'img_filename': 'img1.txt', 'img_size':'20', 'obj': [{'obj_size':'5', 'obj_type':'car'}, {{'obj_size':'6', 'obj_type':'bus'}}]}
То есть третий столбец - это список столбцов, содержащих данные каждой группы.
Как я могу это сделать?
РЕДАКТИРОВАТЬ:
Рассмотрим следующий пример.
import pandas as pd
df1 = pd.DataFrame([
{'img_filename': 'img1.txt', 'img_size':'20', 'obj_size':'5', 'obj_type':'car'},
{'img_filename': 'img1.txt', 'img_size':'20', 'obj_size':'6', 'obj_type':'bus'},
{'img_filename': 'img2.txt', 'img_size':'25', 'obj_size':'4', 'obj_type':'car'}
])
df2 = pd.DataFrame([
{'img_filename': 'img1.txt', 'img_size':'20', 'obj': [{'obj_size':'5', 'obj_type':'car'}, {'obj_size':'6', 'obj_type':'bus'}]},
{'img_filename': 'img2.txt', 'img_size':'25', 'obj': [{'obj_size':'4', 'obj_type':'car'}]}
])
Я хочу превратить df1
в df2
.