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

如何在Pandas中移除JSON列表中的NaN值?

解决JSON列表中的NaN值问题

问题出在Python的NaN被json.dumps序列化为字符串"NaN",但这不符合标准JSON规范,所以会引发查询错误。可以通过以下两种方式过滤掉NaN值:

方法一:转列表前先清理DataFrame

直接用dropna()移除identifier列中值为NaN的行,再转成列表:

list_identifiers = df['identifier'].dropna().tolist()
listjson = json.dumps(list_identifiers)

方法二:对已生成的列表进行过滤

如果已经得到了包含NaN的列表,用列表推导式筛选出非NaN元素:

import pandas as pd

list_identifiers = df['identifier'].tolist()
# 过滤NaN值
filtered_list = [item for item in list_identifiers if not pd.isna(item)]
listjson = json.dumps(filtered_list)

也可以用numpy的isnan方法(需要导入numpy):

import numpy as np

filtered_list = [item for item in list_identifiers if not np.isnan(item)]

这样处理后,生成的JSON列表就不会包含无效的NaN token,符合标准JSON格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 01:20:59