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

Python Pandas:JSON转字典数据丢失及DataFrame逗号残留问题

JSON提取数据转DataFrame的逗号残留处理

问题场景

从JSON文件中提取payload.blob.rawLines字符串列表后,使用split(None, 1)转换为字典时会丢失部分键值对,改用reversed(line.split(None, 1))解决了数据丢失问题,但将字典转为DataFrame后,value列存在逗号残留,需要清理。

解决方案

方案1:生成字典时同步清理逗号

在分割键值对的阶段就去除值中的逗号,避免后续二次处理:

import json
import pandas as pd

# 读取并解析JSON文件
with open("f.txt", "r") as f:
    data = json.load(f)
raw_lines = data["payload"]["blob"]["rawLines"]

# 构建字典并清理值中的逗号
clean_dict = {}
for line in raw_lines:
    stripped_line = line.strip()
    # 按第一个空白分割,最多分成2部分
    parts = stripped_line.split(None, 1)
    if len(parts) == 2:
        # 反转后得到值和键(适配之前的reversed逻辑)
        raw_value, key = parts
        # 去除值中的所有逗号
        clean_value = raw_value.replace(',', '')
        clean_dict[key] = clean_value

# 转换为DataFrame
df = pd.DataFrame(clean_dict.items(), columns=["name", "value"])

方案2:生成DataFrame后批量清理

如果已经得到带逗号的DataFrame,直接对value列做替换处理:

# 假设已生成mydataframe
mydataframe["value"] = mydataframe["value"].str.replace(',', '', regex=False)

说明

逗号残留的根源是rawLines中的原始值自带逗号,上述两种方法都能彻底去除逗号,确保name和value列内容纯净。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 04:06:07