小白的python学习之路!掌握Pandas:Python中的数据分析利器

Pandas是Python中最流行的数据分析工具之一,它提供了强大的数据结构和功能,使你能够轻松地处理、分析和可视化数据。本文将介绍Pandas的两个主要数据结构:DataFrame和Series,以及一些常见的用例和代码示例。

1. DataFrame:数据的核心

DataFrame是Pandas的核心数据结构,它类似于电子表格或数据库表,由行和列组成。每一列可以包含不同类型的数据,使其非常适合处理结构化数据。

创建DataFrame

你可以从各种数据源创建DataFrame,如CSV文件、Excel文件或手动创建。下面是一个示例,从CSV文件创建DataFrame:

python
复制代码
import pandas as pd

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

# 查看前几行数据
print(data.head())

数据操作

DataFrame支持各种数据操作,如数据筛选、合并、分组、排序和汇总。以下是一些示例:

python
复制代码
# 选择特定列
product_names = data['Product Name']

# 条件筛选
high_sales = data[data['Sales'] > 1000]

# 分组和汇总
sales_by_category = data.groupby('Category')['Sales'].sum()

# 数据排序
sorted_data = data.sort_values(by='Sales', ascending=False)

2. Series:单一特征的利器

Series是Pandas的另一个重要数据结构,它类似于Python中的列表,但带有索引。通常用于表示单一特征的数据列。

创建Series

下面是一个示例,创建一个销售数量的时间序列:

python
复制代码
import pandas as pd

# 创建Series
sales_series = pd.Series([100, 150, 200, 250, 300], 
index=['2023-01-01', 
       '2023-01-02', 
       '2023-01-03', 
       '2023-01-04', 
       '2023-01-05'])

# 查看数据
print(sales_series)

数据操作

Series支持索引、切片、数学运算和统计计算。以下是一些示例:

python
复制代码
# 使用索引选择第三天的销售数量
sales_on_day3 = sales_series['2023-01-03']

# 使用切片访问第2到第4天的销售数量
sales_between_day2_and_day4 = sales_series['2023-01-02':'2023-01-04']

# 数学运算,将数据翻两倍
double_sales = sales_series * 2

# 统计计算,计算数据平均值
mean_sales = sales_series.mean()

3. 常用Pandas函数和方法

Pandas库提供了众多函数和方法,用于数据处理和分析。以下是一些常用的函数和方法,以及它们的用法示例。

数据导入和导出

3.1 从CSV文件读取数据
python
复制代码
import pandas as pd

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

# 查看前几行数据
print(data.head())
3.2 保存DataFrame为CSV文件
python
复制代码
# 将DataFrame保存为CSV文件
data.to_csv('saved_data.csv', index=False)

数据查看和基本信息

3.3 查看前几行数据
python
复制代码
# 查看前几行数据
print(data.head())
3.4 显示DataFrame的基本信息
python
复制代码
# 显示DataFrame的基本信息
print(data.info())

数据选择和筛选

3.5 选择特定列
python
复制代码
# 选择特定列
product_names = data['Product Name']
3.6 条件筛选
python
复制代码
# 条件筛选
high_sales = data[data['Sales'] > 1000]

数据处理和变换

3.7 删除行或列
python
复制代码
# 删除行或列
data = data.drop(['Column1', 'Column2'], axis=1)  # 删除列
data = data.drop([0, 1, 2], axis=0)  # 删除行
3.8 填充缺失值
python
复制代码
# 填充缺失值
data['Column1'].fillna(0, inplace=True)  # 使用0填充Column1列的缺失值

数据计算和统计

3.9 计算平均值
python
复制代码
# 计算平均值
mean_sales = data['Sales'].mean()
3.10 数据排序
python
复制代码
# 数据排序
sorted_data = data.sort_values(by='Sales', ascending=False)

数据可视化

3.11 绘制数据图表
python
复制代码
# 绘制数据图表
data['Sales'].plot(kind='bar', title='Sales Data')

这些是Pandas库中一些常见的函数和方法,用于数据导入、查看、选择、筛选、处理、计算、排序和可视化。这些工具使数据分析和数据处理变得更加高效和便捷。


当涉及到Pandas库的函数和方法时,以下是更多有用的函数和操作,这些函数和方法涵盖了Pandas库的主要功能领域,使你能够进行数据清洗、转换、分析和可视化。

数据聚合和汇总

3.12 使用groupbyagg进行数据聚合

groupby函数用于分组数据,然后可以使用agg函数应用不同的聚合函数,执行多个聚合操作。这对于生成摘要统计信息非常有用。

python
复制代码
# 分组数据并计算不同聚合操作
grouped_data = data.groupby('Category').agg({'Sales': 'sum', 'Profit': 'mean'})
3.13 创建数据透视表

pivot_table函数用于创建数据透视表,用于汇总和聚合数据。它允许你以不同的方式对数据进行交叉分析。

python
复制代码
# 创建数据透视表
pivot = data.pivot_table(index='Category', columns='Region', values='Sales', aggfunc='sum')

数据清洗和处理

3.14 删除重复的行

drop_duplicates函数用于删除DataFrame中的重复行。

python
复制代码
# 删除重复的行
data = data.drop_duplicates()
3.15 重命名列或索引

rename函数用于重命名DataFrame的列或索引。

python
复制代码
# 重命名列
data = data.rename(columns={'old_column_name': 'new_column_name'})
3.16 替换特定值

replace函数用于替换DataFrame中的特定值。

python
复制代码
# 替换特定值
data['Column1'].replace(0, 1, inplace=True)  # 将0替换为1
3.17 应用函数到DataFrame的每个元素

applymap函数可用于将函数应用到DataFrame的每个元素。

python
复制代码
# 将函数应用到DataFrame的每个元素
data = data.applymap(lambda x: x*2)  # 将每个元素翻倍

数据计算和统计

3.18 计算列的平均值、总和和相关性

Pandas提供了多种计算函数,如mean()sum()min()max()corr(),用于计算列的平均值、总和、最小值、最大值和相关性等。

python
复制代码
# 计算平均值
mean_sales = data['Sales'].mean()

# 计算总和
total_profit = data['Profit'].sum()

# 找到最小值
min_quantity = data['Quantity'].min()

# 找到最大值
max_discount = data['Discount'].max()

# 计算列之间的相关性
correlation = data['Sales'].corr(data['Profit'])

字符串操作

3.19 字符串大写、模式匹配和拆分

Pandas的字符串方法允许你对字符串列执行各种操作,如将字符串转换为大写、执行模式匹配和拆分字符串。

python
复制代码
# 将字符串列转换为大写
data['Product Name'] = data['Product Name'].str.upper()

# 检查字符串列中是否包含特定模式
pattern = 'ABC'
contains_pattern = data['Description'].str.contains(pattern)

# 拆分字符串列
data['First Name'], data['Last Name'] = data['Full Name'].str.split(' ', 1).str

时间序列操作

3.20 重新采样和滚动计算

对于时间序列数据,Pandas提供了resamplerolling函数,用于重新采样数据和执行滚动计算。

python
复制代码
# 重新采样时间序列数据
daily_data = data.resample('D').sum()

# 执行滚动计算
rolling_mean = data['Sales'].rolling(window=7).mean()

缺失数据处理

3.21 处理缺失数据

Pandas提供了处理缺失数据的函数,如dropnafillnainterpolate,用于删除、填充或插值缺失值。

python
复制代码
# 删除包含缺失值的行或列
data = data.dropna()

# 填充缺失值
data['Column1'].fillna(0, inplace=True)

# 插值填充缺失值
data['Column2'].interpolate(method='linear', inplace=True)

多索引操作

3.22 设置和重置索引

set_index函数用于设置列作为索引,而reset_index函数用于重置索引。

python
复制代码
# 设置列作为索引
data = data.set_index('Date')

# 重置索引为空
data = data.reset_index()

结语

Pandas是数据科学家、分析师和工程师的利器,它提供了强大的工具来处理和分析数据。无论你是初学者还是有经验的数据分析师,掌握Pandas都将提高你的数据处理效率。希望本文对你了解Pandas有所帮助,进一步探索和学习Pandas,你将能够更轻松地应对数据分析任务。

本文只是Pandas的入门指南,还有很多高级功能和技巧等待你去发现。博主也会继续学习和实践,后续还会继续分享python相关的内容!

这里给大家分享一份Python全套学习资料,包括学习路线、软件、源码、视频、面试题等等,都是我自己学习时整理的,希望可以对正在学习或者想要学习Python的朋友有帮助!

CSDN大礼包:全网最全《全套Python学习资料》免费分享🎁

😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓

👉CSDN大礼包🎁:全网最全《Python学习资料》免费分享(安全链接,放心点击)👈

1️⃣零基础入门

① 学习路线

对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述
因篇幅有限,仅展示部分资料

2️⃣国内外Python书籍、文档

① 文档和书籍资料

在这里插入图片描述

3️⃣Python工具包+项目源码合集

①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

4️⃣Python面试题

我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

5️⃣Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述
在这里插入图片描述
上述所有资料 ⚡️ ,朋友们如果有需要 📦《全套Python学习资料》的,可以扫描下方二维码免费领取 🆓
😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓

👉CSDN大礼包🎁:全网最全《Python学习资料》免费分享(安全链接,放心点击)👈

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值