首页 > 解决方案 > 从字符串列表中删除空字符串

问题描述

我的数据框中有一列包含具有这种结构的名称列表:

df['name']=[

['anna','karen','',]
['', 'peter','mark','john']

]

我想摆脱我用列表理解尝试过的空字符串

[[name for name in df['name'] if name.strip()] for df['name'] in df]

但这根本不起作用,有没有办法做到这一点?我还通过将空字符串替换为 nan 来使用 pandas 的 replace 方法,但这也不起作用,因为它总是抛出一个关键错误......

df['name'].replace('', np.nan)

标签: pythonpandas

解决方案


您可以使用过滤器功能做到这一点

df['name'] = [list(filter(None, sublist)) for sublist in df['name']]

推荐阅读