一艘班轮。
img_filename
不同的
img_size
join
价值。
img_filename img_size obj_size obj_type
0 img1.txt 20 5 car
1 img1.txt 22 6 bus
2 img2.txt 25 4 car
# if you want to join the img_size of img1.txt like 20, 22
df2 = df1.groupby("img_filename")["img_size", "obj_size", "obj_type"].apply(lambda x: pd.Series({"obj": x[["obj_size", "obj_type"]].to_json(orient="records"), "img_size": ','.join(x["img_size"])})).reset_index()
输出:
img_filename obj img_size
0 img1.txt [{"obj_size":"5","obj_type":"car"},{"obj_size"... 20,22
1 img2.txt [{"obj_size":"4","obj_type":"car"}] 25
考虑第一价值
#if you want to consider only first value i.e. 20
df2 = df1.groupby("img_filename")["img_size", "obj_size", "obj_type"].apply(lambda x: pd.Series({"obj": x[["obj_size", "obj_type"]].to_json(orient="records"), "img_size": x["img_size"].iloc[0]})).reset_index()
输出:
img_filename obj img_size
0 img1.txt [{"obj_size":"5","obj_type":"car"},{"obj_size"... 20
1 img2.txt [{"obj_size":"4","obj_type":"car"}] 25