数据预处理

一般例如json数据可以用Pandas进行数据处理
with open('xxx.json','r', encoding = 'utf-8') as filename

python 复制代码
import json
import pandas as pd
# 读取JSON文件, utf-8保留中文
with open('json/prompt.json', 'r', encoding='utf-8') as file:
    data = json.load(file)
# 存储提取的内容
extracted_data = []

# 遍历
for item in data:
	if item['kwargs'] != "{}":  # 或者 if 'kwargs' in item:
		kwargs_dict = item
		extracted_data.append(kwargs_dict)

# 写入新的JSON文件,可以同时写多个,ensure_ascii false保留中文,index 缩进4格
with open('new1.json','w',encoding = 'utf-8') as newfile1, with open ('new2.json','w',encoding = 'utf-8') as newfile2:
	json.dump(extracted_data, newfile1, ensure_ascii = False, index = 4)

# df格式
df = pd.DataFrame(data)
# csv保存
# 如果需要保存为CSV文件
df.to_csv('output.csv', index=False, encoding='utf-8') # 此处index是索引,,不包含索引
		

Pandas DataFrame 提供了丰富的数据处理和查看方法。以下是一些常见的方法和示例代码:

查看数据

  1. 查看前几行数据

    python 复制代码
    df.head()

    查看前5行数据。

  2. 查看后几行数据

    python 复制代码
    df.tail()

    查看后5行数据。

  3. 查看数据的基本信息

    python 复制代码
    df.info()

    显示数据类型、非空值计数等信息。

  4. 查看描述性统计信息

    python 复制代码
    df.describe()

    显示数据的统计信息,如平均值、标准差等。

处理缺失值

  1. 查找缺失值

    python 复制代码
    df.isnull().sum()

    查看每列缺失值的数量。

  2. 删除包含缺失值的行

    python 复制代码
    df.dropna()

    删除包含任何缺失值的行。

  3. 填充缺失值

    python 复制代码
    df.fillna(value)

    用指定值填充缺失值。例如,用0填充:

    python 复制代码
    df.fillna(0)

数据选择与过滤

  1. 选择列

    python 复制代码
    df['column_name']

    选择单列数据。

    python 复制代码
    df[['column1', 'column2']]

    选择多列数据。

  2. 选择行

    使用行索引选择行:

    python 复制代码
    df.loc[0]

    使用条件过滤行:

    python 复制代码
    df[df['column_name'] > value]

数据操作

  1. 添加新列

    python 复制代码
    df['new_column'] = df['column1'] + df['column2']
  2. 删除列

    python 复制代码
    df.drop(columns=['column_name'])
  3. 重命名列

    python 复制代码
    df.rename(columns={'old_name': 'new_name'}, inplace=True)
  4. 数据排序

    python 复制代码
    df.sort_values(by='column_name', ascending=False)

数据合并

  1. 按列合并

    python 复制代码
    df1.merge(df2, on='common_column')
  2. 按行合并

    python 复制代码
    pd.concat([df1, df2])
相关推荐
三十岁老牛再出发2 天前
08.18每日总结
c++·python·numpy·pandas
虎头金猫4 天前
如何在群晖NAS上通过Docker部署CloudSaver?群晖部署CloudSaver教程|聚合资源搜索并实现远程访问
运维·服务器·网络·python·docker·容器·pandas
Uncommon.6 天前
使用pandas处理csv并转为张量
pytorch·python·深度学习·pandas
STR_Liang8 天前
pandas.read_html 报错FileNotFoundError、OSError Traceback (most recent call last)
pandas
㳺三才人子9 天前
初探 Data Analysis - Matplotlib
python·plotly·pandas·matplotlib
quantdash_cc9 天前
告别自建 Requests/BS4 网页爬虫:基于 QuantDash 搭建零维保的高性能量化行情流水线
开发语言·爬虫·python·pandas·量化·quantdash
菜冻鱼9 天前
Python-sklearn-评估指标
开发语言·人工智能·python·机器学习·numpy·pandas·sklearn
菜冻鱼9 天前
Python-sklearn-模型选择
开发语言·人工智能·python·机器学习·numpy·pandas·sklearn
quantdash_cc10 天前
基于 QuantDash 5 分钟 K 线的网格交易策略参数网格搜索寻优实战
android·开发语言·pandas·量化·quantdash
FBI HackerHarry浩10 天前
Pandas 库中用于分类变量独热编码(One-Hot Encoding)的函数 pd.get_dummies() 函数
开发语言·人工智能·python·pandas