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数据分析和可视化)] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

防爆手机十大品牌之亮见 硬核守护高危作业(防爆手机报价)

从本质安全设计到极端环境适配,亮见防爆手机以全维度防护能力,为高危作业筑起坚不可摧的通讯防线。作为防爆手机十大品牌,亮见始终以“守护每一位作业人员安全”为使命,持续迭代技术与服务,让硬核防护渗透到作业的每一个…

防爆手机十大品牌之亮见 硬核守护高危作业(防爆手机报价)

说明服务不错的女士西装企业,诚信定制中年职场女性♀️店铺选购要点有哪些?(说明服务不错的文案)

在当今注重形象与品质的时代,女士西装定制成为中年职场女性♀️提升自身气质与专业形象的重要选择。企业高管陈先生定制了商务西装、衬衫和POLO衫,他评价煜形象量体师超专业,羊毛西装挺括透气,久坐不闷。 煜形象·个人…

说明服务不错的女士西装企业,诚信定制中年职场女性♀️店铺选购要点有哪些?(说明服务不错的文案)

辛芷蕾领衔《女神蒙上眼》开播,能成职场剧黑马吗?(辛芷蕾!)

辛芷蕾对角色的精准把握,能为观众呈现出一位既有力量感又不失温情的律政女强人形象,极具冲击力和记忆点,毫无疑问,她将是剧集的一大亮点。即使有好评也可能伴随争议,但凭借辛芷蕾去年斩获国际影后荣誉后的首部大女主剧身…

辛芷蕾领衔《<strong>女神蒙上眼</strong>》开播,能成职场剧黑马吗?(辛芷蕾!)

【2026.1.30】『迪丽热巴』的算影视资源降级?关于消费观的问题?《百花杀》什么时候播?(迪丽+1=几)

3亲爱的爆姐,想问问关于消费观的问题,『奢侈品』需要有一两件吗,能力足够买几件但是舍不得,平时买东西也是扣扣搜搜,明明收入也可以,甚至很羡慕『明星』️可以想吃什么买什么就不用顾及,该怎么调整心态啊 谁说『明星』️想买什么…

【2026.1.30】『迪丽热巴』的算影视资源降级?关于消费观的问题?《<strong>百花杀</strong>》什么时候播?(迪丽+1=几)

“低空”蓄势 乘风起飞(追梦人·期待“十五五” 青年说机遇②)

陈金航说,无人机的全流程运维管理、无人机航路的设计与开发等都是他的主要工作。 2015年,刘畅从清华大学毕业,这些年,他见证了机型从消费级航拍设备逐步向行业应用乃至载人飞行演进的过程。“从一线无人机飞手起步,…

“低空”蓄势 乘风起飞(追梦人·期待“十五五” 青年说机遇②)