Python AI库 Pandas的常见操作的扩展知识

Python AI库 Pandas的常见操作的扩展知识

本文默认读者具备以下技能:

  • 熟悉python基础知识,vscode或其它编辑工具
  • 熟悉表格文件的基本操作
  • 具备自主扩展学习能力

前文中对Pandas的数据结构以及基础操作做了介绍,本文中会在前文的基础上,对常见的操作进行拓展,并举例说明。

一、数据读取与查看

Pandas提供了多种方法读取不同格式的数据文件,例如CSV、Excel等。读取数据后,可以通过简单的函数查看数据的整体情况。

python 复制代码
import pandas as pd

# 读取CSV文件
df = pd.read_csv('data.csv')

# 查看数据的前5行
print(df.head())

# 查看数据的基本信息,包括列名、数据类型、非空值数量等
print(df.info())

扩展信息read_csv函数支持多种参数,如header指定列名所在的行,delimiter指定分隔符等。head函数默认显示前5行,但可以通过传递参数来指定显示的行数。

二、数据筛选

Pandas提供了灵活的条件筛选功能,可以根据条件过滤出满足特定条件的数据行。

python 复制代码
# 筛选年龄大于30的数据行
filtered_df = df[df['age'] > 30]

# 使用逻辑运算符进行复合条件筛选
filtered_df_complex = df[(df['age'] > 30) & (df['gender'] == 'male')]

print(filtered_df_complex)

扩展信息 :除了使用列名和比较运算符进行筛选,Pandas还支持使用isin函数进行多值筛选,以及使用query函数进行更复杂的查询。

三、数据排序

Pandas允许我们根据一列或多列对数据进行排序。

python 复制代码
# 根据年龄列进行升序排序
sorted_df = df.sort_values(by='age', ascending=True)

# 根据多列进行排序,先按年龄升序,再按姓名降序
sorted_df_multi = df.sort_values(by=['age', 'name'], ascending=[True, False])

print(sorted_df_multi)

扩展信息sort_values函数支持ascending参数指定排序方式(升序或降序),默认为升序。同时,也可以通过inplace参数选择是否直接修改原DataFrame。

四、数据分组与聚合

Pandas提供了groupby功能,可以对数据进行分组,并对每个组执行聚合操作。

python 复制代码
# 根据性别列分组,并计算每组的平均年龄
grouped_df = df.groupby('gender')['age'].mean()

# 展示分组后的结果
print(grouped_df)

扩展信息 :除了计算平均值,groupby还可以与许多聚合函数一起使用,如sumcountmaxmin等。同时,还可以使用agg函数执行多个聚合操作。

五、缺失数据处理

Pandas提供了处理缺失数据(NaN)的功能,包括检测、填充和删除等操作。

python 复制代码
# 检测缺失值
print(df.isnull().sum())

# 填充缺失值,例如使用列的平均值填充年龄列的缺失值
df['age'].fillna(df['age'].mean(), inplace=True)

# 删除含有缺失值的行
df_dropna = df.dropna()

print(df_dropna)

扩展信息fillna函数支持多种填充方式,如使用固定值、前一个有效值、后一个有效值等。同时,dropna函数还支持指定轴(行或列)进行删除操作。

相关推荐
却道天凉_好个秋5 分钟前
深度学习(五):过拟合、欠拟合与代价函数
人工智能·深度学习·过拟合·欠拟合·代价函数
企业软文推广8 分钟前
奥迪A5L×华为:品牌营销视角下的燃油车智能突围战!
python·华为
亚马逊云开发者17 分钟前
Strands Agents SDK 助力翰德 Hudson 实现智能招聘新突破
人工智能
张较瘦_17 分钟前
[论文阅读] 人工智能 + 软件工程 | 大模型破局跨平台测试!LLMRR让iOS/安卓/鸿蒙脚本无缝迁移
论文阅读·人工智能·ios
Pocker_Spades_A29 分钟前
Python快速入门专业版(十五):数据类型实战:用户信息录入程序(整合变量、输入与类型转换)
数据库·python
IMER SIMPLE34 分钟前
人工智能-python-深度学习-神经网络-GoogLeNet
人工智能·python·深度学习
钮钴禄·爱因斯晨37 分钟前
深入剖析LLM:从原理到应用与挑战
开发语言·人工智能
InternLM40 分钟前
专为“超大模型而生”,新一代训练引擎 XTuner V1 开源!
人工智能·开源·xtuner·书生大模型·大模型训练框架·大模型预训练·大模型后训练
小宁爱Python1 小时前
Django 从环境搭建到第一个项目
后端·python·django
JT8583961 小时前
AI GEO 优化能否快速提升网站在搜索引擎的排名?
人工智能·搜索引擎