首页 > 解决方案 > 从熊猫数据框中的列表中删除元素

问题描述

我想从 pandas 数据框列的列表中删除一个特定值。我该怎么做?

df = pd.DataFrame({'A': ['a1', 'a2', 'a3'],
               'B': [['b1', 'b2'], ['b1', 'b1'], ['b2']],
               'C': [['c1', 'b1'], ['b3'], ['b2', 'b2']],
               'D': ['d1', 'd2', 'd3']})

我想从数据框中的“B”列中删除列表中的字符串“b1”。

标签: pythonpandas

解决方案


您可以使用列表理解

df['B'] = df.B.apply(lambda x: [i for i in x if i != 'b1'])


    A   B       C           D
0   a1  [b2]    [c1, b1]    d1
1   a2  []      [b3]        d2
2   a3  [b2]    [b2, b2]    d3

推荐阅读