数据框内的熊猫数据框

时间:2019-09-05 20:50:20

标签: python pandas dataframe

我正在尝试训练多对象分类器。为此,我将数据集信息存储到了当前的熊猫数据框架中:

|IMAGE_PATHS---|LABELS------------------------------------------|
|path_to_image1|[[c11 x11 y11 w11 h11],[c12 x12 y12 w12 h12]...]| 
|path_to_image2|[[c21 x21 y21 w21 h21],[c22 x22 y22 w22 h22]...]| 
|...

但是以这种方式拥有它并不容易。例如,如果我想查看图像中标记的所有独角兽,则需要遍历每行中的所有元素并寻找它们。如果此标签是DataFrames,我可以轻松地将它们过滤为df[df["label"] == "unicorn"]

那么有没有一种方法可以轻松地在此DataFrame中创建一个DataFrame或其他有趣的技巧?

1 个答案:

答案 0 :(得分:0)

如果标签只是嵌套列表,则可以执行以下操作:

df[df['LABELS'].apply(lambda x: 'unicorn' in [item for sublist in x for item in sublist])]

这会将子列表拉平到lambda函数中的单个列表中,然后检查其是否包含“ unicorn”,遮盖df并最终返回过滤的df