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


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

相关推荐
LDR0062 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术2 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园2 天前
C++20 Modules 模块详解
java·开发语言·spring
swordbob2 天前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio
源分享2 天前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
Luminous.2 天前
C语言--day30
c语言·开发语言
何以解忧,唯有..2 天前
Go语言循环语句详解:for、range与循环控制
开发语言·算法·golang
謓泽2 天前
C语言不是语法,是通往机器的地图。
c语言·开发语言
云水一下2 天前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php
飞天狗1112 天前
零基础JavaWeb入门——第五课第二小节:九大内置对象 · 第2个:response(响应对象)
java·开发语言