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

如何过滤JSON dataframe中的重复值与空值并存储为数组

问题根源

你现有的代码仅替换了空字符串''为NaN,没有处理仅包含空格的空白内容,同时values.tolist()返回的是嵌套二维列表,不符合一维数组的需求。

修正后代码

import pandas as pd
import numpy as np
import time

start = time.time()
with open('stela_zerrl_t01_201222_084053_test_edited.json', 'r') as fin:
    df = pd.read_json(fin, lines=True)
    # 提取目标列→去重→移除前后空白→空内容转NaN→删空值→转一维numpy数组
    parsed_data = df["SRC/Word1"].drop_duplicates().str.strip().replace('', np.NAN).dropna().to_numpy()
    
print(parsed_data)

代码说明

  • 把原来取列的方式从[["SRC/Word1"]]改成["SRC/Word1"],直接拿到一维Series,避免后续生成二维结构
  • 新增str.strip()操作,把所有字符串前后的空白字符(空格、制表符等)统一清除,全空格的内容处理后会变成空字符串
  • 最后用to_numpy()直接输出numpy一维数组,如果你需要Python原生列表,替换成.tolist()即可,输出格式为['E1F25701', 'E15511D7']
  • 顺带修正了原代码中numpy导入未用别名np、缺time模块导入的语法问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 04:03:00