Python - 数据分析三剑客之Pandas-数据分析实战(python数据分析和可视化)

Python - 数据分析三剑客之Pandas-数据分析实战(python数据分析和可视化)

Pandas 是 Python 数据分析领域的核心工具库,与 NumPy、Matplotlib 并称为「数据分析三剑客」。它提供了高效的数据结构和数据分析工具,尤其适合处理结构化数据(如表格数据)。以下是 Pandas 的核心知识框架和实战指南:

一、Pandas 核心数据结构

1. Series

  • 一维标记数组,可存储任意数据类型(整数、字符串、浮点数等)
  • 示例:
  • python
  • import pandas as pds = pd.Series([1, 3, 5, 'a'], index=['A', 'B', 'C', 'D'])

2. DataFrame

  • 二维表格型数据结构(类似 Excel 表格)
  • 核心特性:
  • 每列可以是不同数据类型
  • 支持行/列标签操作
  • 示例:
  • python
  • data = { 'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35], 'City': ['New York', 'London', 'Tokyo']}df = pd.DataFrame(data)

二、数据读取与写入

1. 读取数据

python

# 读取 CSVdf = pd.read_csv('data.csv', encoding='utf-8') # 读取 Exceldf = pd.read_excel('data.xlsx', sheet_name='Sheet1') # 读取数据库import sqlite3conn = sqlite3.connect('database.db')df = pd.read_sql('SELECT * FROM table', conn)

2. 写入数据

python

df.to_csv('output.csv', index=False) # 不保存索引df.to_excel('output.xlsx', sheet_name='Results')

三、数据清洗与预处理

1. 处理缺失值

python

# 检测缺失值df.isnull().sum() # 删除缺失值df.dropna(axis=0) # 删除含缺失值的行 # 填充缺失值df.fillna(value=0) # 用0填充df['Age'].fillna(df['Age'].mean(), inplace=True) # 用均值填充

2. 数据去重

python

df.drop_duplicates(subset=['Name'], keep='first')

3. 数据类型转换

python

df['Date'] = pd.to_datetime(df['Date']) # 转为时间格式df['Price'] = df['Price'].astype(float) # 转为浮点型

四、核心操作技巧

1. 数据筛选

python

# 条件筛选df[df['Age'] > 30] # 多条件筛选df[(df['Age'] > 25) & (df['City'] == 'London')] # 字符串匹配df[df['Name'].str.contains('^A')] # 名字以A开头

2. 数据分组与聚合

python

# 按城市分组计算平均年龄df.groupby('City')['Age'].mean() # 多重聚合df.groupby('City').agg({ 'Age': ['mean', 'max'], 'Salary': 'sum'})

3. 数据合并

python

# 横向合并(类似 SQL JOIN)pd.merge(df1, df2, on='ID', how='left') # 纵向合并pd.concat([df1, df2], axis=0)

五、高级功能

1. 时间序列处理

python

# 生成时间序列dates = pd.date_range('20230101', periods=6) # 重采样df.resample('M').sum() # 按月统计 # 时间差计算df['Time_Diff'] = df['End_Time'] - df['Start_Time']

2. 数据可视化(需配合 Matplotlib)

python

import matplotlib.pyplot <img src=url"dyikw.cn, ofodk.cn, uiousl.cn, res.mp.sohu.com">as pltdf.plot(x='Date', y='Sales', kind='line')plt.show()

3. 性能优化

python

# 设置合适的索引df.set_index('ID', inplace=True) # 使用向量化操作df['Total'] = df['Price'] * df['Quantity'] # 代替逐行计算

六、实战案例:销售数据分析

python

# 读取数据sales = pd.read_csv('sales_data.csv') # 数据清洗sales.dropna(subset=['Product'], inplace=True)sales['Date'] = pd.to_datetime(sales['Date']) # 分析季度销售趋势sales.set_index('Date', inplace=True)quarterly_sales = sales.resample('Q').sum()['Revenue'] <img src=url"ieiio.cn, iiioj.cn, oifeji.cn, res.mp.sohu.com"># 可视化展示quarterly_sales.plot(kind='bar', title='Quarterly Sales')plt.ylabel('Revenue (USD)')plt.show()

七、学习建议

  1. 官方文档:https://pandas.pydata.org/docs/
  2. 练习数据集:使用 Kaggle 提供的公开数据集
  3. 进阶方向:
  • 学习 groupby + apply 组合操作
  • 掌握 pivot_table 数据透视表
  • 了解 pd.cut 分箱操作
  • 结合 Seaborn 进行高级可视化

掌握 Pandas 后,建议继续学习:

  • Matplotlib/Seaborn:数据可视化
  • SQL:数据库查询
  • 统计学基础:为数据分析提供理论支撑

Pandas 的强大之处在于其灵活性和生态整合能力,建议通过实际项目(如电商销售分析、金融数据建模)巩固知识。

特别声明:[Python - 数据分析三剑客之Pandas-数据分析实战(python数据分析和可视化)] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

自助KTV的十大点歌系统(ktv自助餐哪里有)

4、巨嗨 G-Hi:AI 情绪识别推歌,覆盖 3 万 + 无人店(35% 新兴市占); AI 推荐、声光联动成主流,头部品牌曲库正版率超 98%;优先支持远程运维的系统:如巨嗨、视易、雷石、無老板、多唱等,…

自助KTV的十大点歌系统(ktv自助餐哪里有)

歌手2025》让陈楚生口碑翻车?吃到最大红利的歌手竟不是陈楚生(《歌手2020》)

当她在舞台上释放积蓄多年的音乐能量时,无数乐迷惊叹:&quot;这才是被埋没的宝藏歌手!若在神仙打架的往季登场,或许早被淘汰;但在本季,她恰逢其时地复制了&quot;李晟式&quot;成功。 值得玩味的是,本季节目评

《<strong>歌手2025</strong>》让陈楚生口碑翻车?吃到最大红利的歌手竟不是陈楚生(《<strong>歌手2020</strong>》)

能收听国外电台的收音机软件?(能收听国外电台吗)

能收听国外电台的收音机软件?(能收听国外电台吗)

犯罪悬疑剧《谷雨》待播!李路执导,『张颂文』『井柏然』携5大美女主演(韩剧犯罪悬疑剧)

一具尸体从摩天大楼电梯井坠落,死者相当后一通电话竟打给了这个男人——当服装厂老板严平安(孙艺洲,饰)找出财务总监掌握的43亿骗税黑料时,一场横跨鹏州与北京的亡命追逃就此展开!严平安冒死取得的铁证,竟牵扯出跨…

犯罪悬疑剧《<strong>谷雨</strong>》待播!李路执导,『张颂文』『井柏然』携5大美女主演(韩剧犯罪悬疑剧)

科股早知道:人形『机器人』️行业有望进入销量上升期(科股是什么意思)

信达证券表示,预计Optimus 3一旦落地将成为全球参考的重要对象,人形『机器人』️的结构和设计方向也有望从目前的“多种多样”逐渐聚拢。业内认为,RubinGPU的热功耗将自原先预期的1.8kW提高至2.3kW…

科股早知道:人形『机器人』️行业有望进入销量上升期(科股是什么意思)