You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Pandas DataFrame中的None值转换为空列表[]

解决方案

你可以用两种简单方法实现需求:

方法1:使用apply直接判断替换

遍历列中每个元素,若为None则返回空列表[],否则保留原元素:

df_final_minimal['newa_cited_docdb'] = df_final_minimal['newa_cited_docdb'].apply(lambda x: [] if x is None else x)

方法2:使用replace批量替换

利用Pandas的replace方法,直接将所有None值映射为空列表:

df_final_minimal['newa_cited_docdb'] = df_final_minimal['newa_cited_docdb'].replace({None: []})

为什么你之前的代码无效?

你用explode()+groupby()的逻辑完全绕远了:explode是把列表类型元素拆分成多行,后续x.all()判断的是分组后Series的所有元素是否为真,和原单元格是否为None没有关系,自然达不到替换效果。

内容的提问来源于stack exchange,提问作者Lusian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 11:20:36