Pandas 常用函数

Pandas 常用函数

引言

Pandas 是 Python 中一个强大的数据分析库,它提供了快速、灵活且直观的数据结构,使得数据处理和分析变得更加简单。在本文中,我们将介绍 Pandas 中一些常用的函数,帮助您更好地理解和使用这个库。

一、数据结构

Pandas 主要提供两种数据结构:Series 和 DataFrame。Series 是一个一维数组,类似于 NumPy 中的 ndarray;DataFrame 是一个二维表格,由行和列组成。

1.1 Series

python 复制代码
import pandas as pd

# 创建 Series
s = pd.Series([1, 2, 3, 4, 5])

# 打印 Series
print(s)

1.2 DataFrame

python 复制代码
import pandas as pd

# 创建 DataFrame
df = pd.DataFrame({
    'Name': ['Tom', 'Jerry', 'Bob'],
    'Age': [25, 30, 35],
    'Salary': [5000, 6000, 7000]
})

# 打印 DataFrame
print(df)

二、数据操作

Pandas 提供了丰富的数据操作功能,包括数据读取、数据清洗、数据转换等。

2.1 数据读取

python 复制代码
import pandas as pd

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

# 从 Excel 文件读取数据
df = pd.read_excel('data.xlsx')

# 从 SQL 数据库读取数据
df = pd.read_sql('SELECT * FROM table', conn)

2.2 数据清洗

python 复制代码
import pandas as pd

# 删除重复行
df.drop_duplicates(inplace=True)

# 删除缺失值
df.dropna(inplace=True)

# 填充缺失值
df.fillna(0, inplace=True)

2.3 数据转换

python 复制代码
import pandas as pd

# 将字符串转换为日期
df['Date'] = pd.to_datetime(df['Date'])

# 将字符串转换为整数
df['Age'] = df['Age'].astype(int)

三、数据筛选

Pandas 提供了多种数据筛选方法,包括条件筛选、索引筛选等。

3.1 条件筛选

python 复制代码
import pandas as pd

# 根据条件筛选数据
df = df[df['Age'] > 30]

3.2 索引筛选

python 复制代码
import pandas as pd

# 根据索引筛选数据
df = df.loc[1:3]

四、数据聚合

Pandas 提供了丰富的数据聚合函数,如 sum、mean、max、min 等。

4.1 聚合函数

python 复制代码
import pandas as pd

# 计算平均值
mean_value = df['Age'].mean()

# 计算总和
sum_value = df['Salary'].sum()

# 计算最大值
max_value = df['Age'].max()

# 计算最小值
min_value = df['Age'].min()

4.2 分组聚合

python 复制代码
import pandas as pd

# 按照性别分组,计算平均年龄
grouped = df.groupby('Gender')['Age'].mean()

五、数据可视化

Pandas 与 Matplotlib、Seaborn 等可视化库结合,可以轻松实现数据可视化。

5.1 绘制柱状图

python 复制代码
import pandas as pd
import matplotlib.pyplot as plt

# 绘制柱状图
plt.bar(df['Gender'], df['Age'])
plt.show()

5.2 绘制折线图

python 复制代码
import pandas as pd
import matplotlib.pyplot as plt

# 绘制折线图
plt.plot(df['Date'], df['Price'])
plt.show()

六、总结

本文介绍了 Pandas 中一些常用的函数,包括数据结构、数据操作、数据筛选、数据聚合和数据可视化。通过学习这些函数,您可以更高效地进行数据分析。希望本文对您有所帮助!


注意:以上代码仅为示例,实际使用时请根据具体情况进行调整。

相关推荐
曹牧17 小时前
C#:同一项目中维护多个版本的代码
开发语言·c#
青山师17 小时前
Java反射深度解析:运行时探查的艺术、代价与工程实践
java·开发语言·面试·反射·java程序员·java核心
skilllite作者18 小时前
Deer-Flow 工作流引擎深度评测报告
java·大数据·开发语言·chrome·分布式·架构·rust
likerhood18 小时前
Java的TimeUnit详细讲解
java·开发语言
沐知全栈开发18 小时前
Lua 数组
开发语言
xyq202418 小时前
优化堆排序
开发语言
m2xgo18 小时前
ThreadPoolexecutor源码分析、C++11线程池实现
开发语言·c++
@#¥&~是乱码鱼啦18 小时前
AOP底层:动态代理执行流程(“断点之谜“)
java·开发语言
学困昇18 小时前
彻底搞懂 Linux 基础 IO:文件描述符、重定向、dup2、缓冲区一次讲透!
linux·运维·服务器·开发语言·c++
源图客18 小时前
Go语言goland代码编辑与调试
开发语言·后端·golang