首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从pandas dataframe中的列表中删除元素

从pandas dataframe中的列表中删除元素
EN

Stack Overflow用户
提问于 2018-12-22 02:17:44
回答 2查看 4.5K关注 0票数 2

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

代码语言:javascript
运行
复制
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’。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-12-22 02:22:18

您可以使用列表理解

代码语言:javascript
运行
复制
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
票数 3
EN

Stack Overflow用户

发布于 2018-12-22 02:23:16

就像我之前所有的答案一样

代码语言:javascript
运行
复制
(df.B.map(set)-{'b1'}).map(list)
Out[171]: 
0    [b2]
1      []
2    [b2]
Name: B, dtype: object
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53889227

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档