github star gitee star atomgit star PyPI Downloads AI 编程 AI 交流群

大家好,我是正在实战各种AI项目的程序员晚枫。

先问你三个问题:

  1. 你每天花多少时间在整理 Excel 表格上?
  2. 你有没有因为数据处理太慢而被老板催过?
  3. 你看到同事用 Python 几分钟搞定你几小时的工作,心里什么感受?

如果以上任何一个问题戳中了你,那么这套课程就是为你准备的。


🎯 为什么数据分析是职场必备技能?

真实场景

场景一:月度报表

1
2
3
4
5
6
7
8
9
10
11
12
小张(传统方式):
- 打开 Excel
- 复制粘贴 12 个sheet的数据
- 写 VLOOKUP 公式(总是报错)
- 手动制作图表
- 耗时:4小时

小李(Python方式):
- 运行一段代码
- 自动读取所有数据
- 一键生成报表和图表
- 耗时:5分钟

场景二:数据清洗

1
2
3
4
5
6
7
8
9
运营同学:
"这份用户数据有10万条,需要:
- 删除重复用户
- 填充缺失的年龄信息
- 把手机号格式统一
- 按城市分组统计"

Excel:卡顿、崩溃、想砸电脑
Python:流畅处理,还能喝杯咖啡

数据说话

技能平均薪资岗位增长率学习难度
Excel 高级8-12K5%⭐⭐⭐
Python 数据分析15-25K35%⭐⭐⭐⭐
数据科学家25-50K45%⭐⭐⭐⭐⭐

结论:Python 数据分析是性价比最高的技能投资。


📚 课程设计理念

我们的不同

市面上大多数数据分析课程的问题是:

  • ❌ 只讲函数,不讲场景
  • ❌ 例子太简单,学完不会用
  • ❌ 缺少真实项目实战
  • ❌ 不教工作效率技巧

我们的课程

  • 场景驱动:每个知识点对应一个工作场景
  • 案例真实:全部来自企业真实需求
  • 项目完整:6个端到端的实战项目
  • 效率优先:教你用最少的代码做最多的事

适合谁学?

👔 职场人士

  • 财务:自动化报表、预算分析
  • 运营:用户行为分析、活动效果评估
  • 市场:竞品监控、投放数据分析
  • 产品:功能使用分析、AB测试
  • 销售:客户画像、业绩预测

🎓 学生群体

  • 论文数据处理
  • 竞赛项目(数学建模、数据挖掘)
  • 求职准备(数据分析岗)

🔄 转行者

  • 想转行数据分析
  • 想提升职场竞争力
  • 对数据科学感兴趣

前置要求

必须掌握:

  • ✅ Python 基础语法(变量、函数、循环)
  • ✅ 基本的文件操作
  • ✅ 有编程思维

不需要:

  • ❌ 数学专业背景(会用到的都会教)
  • ❌ 统计学知识(从0讲起)
  • ❌ 英语很好(中文资料充足)

没学过 Python? 先去完成Python零基础入门课程


🗺️ 30天学习路线图

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Week 1: 筑基期(环境+基础库)
├─ Day 1: Anaconda安装与环境配置
├─ Day 2: NumPy数组操作基础
├─ Day 3: NumPy数学运算进阶
├─ Day 4: Pandas数据结构入门
└─ Day 5: 数据读取与保存实战

Week 2: 核心技能(数据处理)
├─ Day 6: 数据筛选与查询技巧
├─ Day 7: 缺失值处理策略
├─ Day 8: 重复值检测与清洗
├─ Day 9: 数据类型转换与异常值
└─ Day 10: 行列操作与数据透视

Week 3: 进阶技能(数据变换)
├─ Day 11: 数据合并与连接
├─ Day 12: 分组聚合groupby深度解析
├─ Day 13: 时间序列数据处理
├─ Day 14: 字符串处理与正则表达式
└─ Day 15: 性能优化技巧

Week 4: 可视化(让数据会说话)
├─ Day 16: Matplotlib基础绘图
├─ Day 17: 专业图表美化技巧
├─ Day 18: Seaborn统计可视化
├─ Day 19: Pandas内置快速绘图
└─ Day 20: Pyecharts交互式图表

Week 5: 统计分析(数据洞察)
├─ Day 21: 描述性统计指标
├─ Day 22: 假设检验入门
└─ Day 23: 数据分布与相关性分析

Week 6-8: 实战项目(融会贯通)
├─ Day 24: 项目1:销售数据分析报表自动化
├─ Day 25: 项目2:用户行为分析与RFM模型
├─ Day 26: 项目3:库存分析与销量预测
├─ Day 27: 项目4:竞品价格监控与分析
├─ Day 28: 项目5:数据可视化仪表盘搭建
└─ Day 29-30: 课程总结与职业规划

📖 详细课程内容

第一阶段:环境搭建与基础(Week 1)

目标:搭建开发环境,掌握 NumPy 和 Pandas 基础

课节主题核心技能实战产出
1Anaconda安装与环境配置虚拟环境管理、Jupyter使用、包管理配置好专属数据分析环境
2NumPy数组操作基础ndarray创建、索引切片、形状操作、广播机制能处理多维数组数据
3NumPy数学运算进阶统计函数、线性代数、随机数、向量化运算实现高效数值计算
4Pandas数据结构入门Series vs DataFrame、创建方法、基本属性理解表格数据的本质
5数据读取与保存实战CSV/Excel/JSON/SQL、大数据分块、编码处理能对接各种数据源

阶段产出:能独立读取和处理结构化数据

第二阶段:数据处理核心技能(Week 2-3)

目标:掌握数据清洗和变换的核心技能

课节主题核心技能应用场景
6数据筛选与查询loc/iloc、条件筛选、query、isin、模糊匹配从大表中找特定数据
7缺失值处理策略isnull检测、fillna填充、dropna删除、插值法处理不完整数据
8重复值检测与清洗duplicated检测、drop_duplicates、保留策略数据去重
9类型转换与异常值astype类型转换、日期解析、异常值检测(IQR/Z-score)数据标准化
10行列操作与透视表增删改行列、pivot/melt、stack/unstack数据重塑
11数据合并与连接concat、merge、join、一对一/多对多关系处理多表关联分析
12分组聚合深度解析groupby机制、agg聚合、transform、apply自定义分类统计分析
13时间序列数据处理DatetimeIndex、resample重采样、shift滞后、rolling窗口时间趋势分析
14字符串处理技巧str访问器、正则表达式、文本提取、格式转换文本数据清洗
15性能优化技巧向量化vs循环、category类型、内存优化、chunk分块处理百万级数据

阶段产出:能独立完成复杂的数据清洗任务

第三阶段:数据可视化(Week 4)

目标:让数据说话,制作专业图表

课节主题核心技能适用场景
16Matplotlib基础绘图Figure/Axes架构、折线/散点/柱状图、图片保存科研论文图表
17专业图表美化技巧颜色映射、样式设置、中文显示、子图布局汇报展示图表
18Seaborn统计可视化分布图(distplot)、箱线图(boxplot)、热力图(heatmap)、pairplot探索性数据分析
19Pandas快速绘图plot()方法、面积图、饼图、直方图、密度图快速数据预览
20Pyecharts交互式图表动态图表、地图可视化、仪表盘、网页嵌入在线报告/大屏展示

阶段产出:能制作出版级别的数据可视化作品

第四阶段:统计分析基础(Week 5)

目标:从数据中发现洞察

课节主题核心技能业务价值
21描述性统计指标均值/中位数/众数、方差/标准差、百分位数、相关系数数据画像
22假设检验入门t检验、卡方检验、p值解读、置信区间、效应量数据验证决策
23数据分布与相关性正态分布检验、偏度峰度、QQ图、相关矩阵发现数据规律

阶段产出:能用统计方法支撑业务决策

第五阶段:实战项目(Week 6-8)

目标:融会贯通,产出作品集

项目1:销售数据分析报表自动化

业务背景:电商公司需要每日/每周/每月的销售报表
技术要点

  • 多数据源整合(订单系统、库存系统)
  • KPI计算(销售额、客单价、转化率)
  • 同比环比分析
  • 自动化邮件发送

产出物:可运行的自动化报表脚本

项目2:用户行为分析与RFM模型

业务背景:互联网公司需要精细化运营用户
技术要点

  • 用户分层(新用户/活跃用户/流失用户)
  • RFM模型实现(最近购买、购买频率、消费金额)
  • 留存率计算(次日/7日/30日留存)
  • 漏斗分析(注册→激活→付费)

产出物:用户画像分析报告

项目3:库存分析与销量预测

业务背景:零售企业需要优化库存管理
技术要点

  • 库存周转率分析
  • ABC分类法(重点商品识别)
  • 安全库存计算
  • 简单时间序列预测(移动平均/指数平滑)

产出物:库存预警系统

项目4:竞品价格监控与分析

业务背景:电商运营需要监控竞争对手价格
技术要点

  • 爬虫获取竞品数据(或模拟数据)
  • 价格对比分析
  • 价格波动可视化
  • 定价策略建议

产出物:价格监控系统

项目5:数据可视化仪表盘搭建

业务背景:管理层需要实时数据看板
技术要点

  • Streamlit/Dash框架使用
  • 多图表组合布局
  • 交互式筛选器
  • 部署到服务器

产出物:在线数据仪表盘


🎓 学习成果对照表

时间节点你能做什么对应岗位能力
Week 1 结束读取各类数据文件,进行基础操作数据录入员 → 数据助理
Week 3 结束独立完成数据清洗和转换任务数据助理 → 数据分析师
Week 4 结束制作专业的数据可视化报告初级数据分析师
Week 5 结束用统计方法发现数据洞察中级数据分析师
Week 8 结束独立完成完整项目,具备求职能力高级数据分析师

🛠️ 配套资源

数据集(全部提供)

数据集名称记录数字段数应用场景
电商销售数据100,000+15销售分析、报表自动化
用户行为日志500,000+12用户分析、RFM模型
库存数据50,000+10库存分析、预测
股票价格数据10,000+8时间序列分析
问卷调研数据5,000+20统计分析

代码模板

  • 📄 数据清洗流程模板(可直接套用)
  • 📊 常用图表代码片段库
  • 📈 分析报告Markdown模板
  • 🔧 数据处理检查清单

工具推荐

开发环境

  • Jupyter Lab(交互式开发首选)
  • VS Code + Python插件(工程化开发)
  • PyCharm(大型项目)

辅助工具

  • Tableau Public(可视化参考学习)
  • Excel(对比验证结果)
  • Notion(学习笔记管理)

❓ 常见问题解答

Q1:需要数学基础吗?

基础课程不需要。涉及的统计概念会从零讲解,配合代码实践,文科生也能学会。进阶机器学习需要补充线性代数和概率论。

Q2:Mac和Windows都能学吗?

都可以。课程使用跨平台的Python生态,两个系统的差异会在第一课详细说明。

Q3:每天需要投入多少时间?

建议每天1-2小时。周末可以多做项目练习。坚持30天,就能看到明显进步。

Q4:学完后能找到工作吗?

掌握课程内容 + 完成6个项目 = 具备初级数据分析师能力。可以投递数据分析、商业分析、数据运营等岗位。

Q5:跟Excel比有什么优势?

Excel擅长小数据量的快速分析,Python擅长:

  • 大数据量(百万级以上)
  • 自动化(定时任务)
  • 复杂计算(机器学习)
  • 可复用(代码可以重复使用)

Q6:会教机器学习吗?

本课程聚焦数据分析基础。机器学习是后续进阶内容,建议先打好基础再学。


🚀 开始学习

准备好了吗?让我们开始这段数据分析之旅!

👉 第一课:Anaconda安装与环境配置

或者,如果你想系统学习:

🎁 AI Python数据分析实战营

适合人群

  • 想快速掌握数据分析技能
  • 需要老师答疑和指导
  • 希望获得就业推荐

包含内容

  • ✅ 30讲高清视频课程
  • ✅ 6个企业级实战项目(含源码)
  • ✅ 配套数据集和练习题
  • ✅ 专属学习社群(老师答疑)
  • ✅ 简历指导和面试辅导
  • ✅ 优秀学员就业推荐

限时福利:前50名报名送《利用Python进行数据分析》实体书

👉 点击了解详情


数据分析的真实工作场景

很多同学学完课程,却不知道实际工作中怎么用。这里列举5个真实场景:

场景1:老板要看销售周报

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 每周自动生成的销售报告
import pandas as pd

# 读取本周和上周数据
this_week = pd.read_csv('sales_this_week.csv')
last_week = pd.read_csv('sales_last_week.csv')

# 计算关键指标
report = pd.DataFrame({
'指标': ['总销售额', '订单数', '客单价', '退货率'],
'本周': [this_week['amount'].sum(), len(this_week),
this_week['amount'].mean(), this_week['returned'].mean()],
'上周': [last_week['amount'].sum(), len(last_week),
last_week['amount'].mean(), last_week['returned'].mean()]
})
report['环比变化'] = ((report['本周'] - report['上周']) / report['上周'] * 100).round(1)
print(report)

场景2:运营要做用户分层

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# RFM模型用户分层
import pandas as pd
import numpy as np

today = pd.Timestamp('2025-12-31')
rfm = orders.groupby('user_id').agg({
'order_date': lambda x: (today - x.max()).days, # Recency
'order_id': 'count', # Frequency
'amount': 'sum' # Monetary
})
rfm.columns = ['R', 'F', 'M']

# 打分(1-5分)
rfm['R_score'] = pd.qcut(rfm['R'], 5, labels=[5,4,3,2,1])
rfm['F_score'] = pd.qcut(rfm['F'], 5, labels=[1,2,3,4,5])
rfm['M_score'] = pd.qcut(rfm['M'], 5, labels=[1,2,3,4,5])

# 用户分类
rfm['segment'] = np.where(
(rfm['R_score'].astype(int) >= 4) & (rfm['F_score'].astype(int) >= 4), '重要价值用户',
np.where((rfm['R_score'].astype(int) >= 4), '重要发展用户',
np.where((rfm['F_score'].astype(int) >= 4), '重要保持用户', '一般用户'))
)

场景3:市场部门要做竞品价格监控

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 每日竞品价格监控
import pandas as pd

# 读取今日和昨日价格
today_price = pd.read_csv('competitor_prices_today.csv')
yesterday_price = pd.read_csv('competitor_prices_yesterday.csv')

# 对比价格变化
comparison = today_price.merge(yesterday_price, on='product_name', suffixes=('_today', '_yesterday'))
comparison['change_pct'] = ((comparison['price_today'] - comparison['price_yesterday']) / comparison['price_yesterday'] * 100).round(2)

# 找出降价超过5%的竞品
price_drops = comparison[comparison['change_pct'] < -5]
if len(price_drops) > 0:
print("⚠️ 竞品大幅降价预警:")
print(price_drops[['product_name', 'price_yesterday', 'price_today', 'change_pct']])

不同行业的数据分析需求

行业核心分析场景常用指标关键工具
电商用户行为、销售分析GMV、转化率、客单价Pandas + pyecharts
金融风控、量化收益率、波动率、夏普比NumPy + scipy
互联网产品分析、A/B测试DAU、留存率、NPSPandas + scipy
制造质量控制、库存良品率、周转率Pandas + matplotlib
医疗临床数据分析生存率、OR值scipy + statsmodels

数据分析师的核心能力模型

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
数据分析能力金字塔:

┌─────────────┐
│ 决策建议 │ ← 最高层:用数据驱动决策
├─────────────┤
│ 洞察发现 │ ← 从数据中发现商业洞察
├─────────────┤
│ 统计分析 │ ← 用统计方法验证发现
├─────────────┤
│ 数据可视化 │ ← 把结果可视化呈现
├─────────────┤
│ 数据处理 │ ← 清洗、转换、聚合
├─────────────┤
│ 数据获取 │ ← 读取各种数据源
└─────────────┘

本课程覆盖了从"数据获取"到"统计分析"的全部能力,实战项目则帮你训练"洞察发现"和"决策建议"能力。

数据分析师的日常:一天的工作是怎样的?

很多人好奇数据分析师到底每天在做什么。这里给你还原一个典型的工作日:

🕘 9:00 - 查看昨日数据看板

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 每天第一件事:跑一遍数据日报脚本
import pandas as pd

yesterday = pd.Timestamp('today') - pd.Timedelta(days=1)

# 读取数据
orders = pd.read_csv('orders.csv', parse_dates=['created_at'])
users = pd.read_csv('users.csv')

# 昨日核心指标
daily = orders[orders['created_at'].dt.date == yesterday.date()]
kpi = {
'GMV': daily['amount'].sum(),
'订单数': len(daily),
'客单价': daily['amount'].mean(),
'活跃用户': daily['user_id'].nunique(),
'新用户占比': (daily['user_id'].nunique() - daily[daily['user_id'].isin(users[users['register_date'] < yesterday]['user_id'])]['user_id'].nunique()) / daily['user_id'].nunique()
}

for k, v in kpi.items():
print(f"{k}: {v}")

🕙 10:00 - 回答业务方问题

运营:"为什么昨天转化率下降了?"

1
2
3
4
5
6
7
8
# 快速排查:按维度拆解转化率
conv_by_channel = orders.groupby('channel')['converted'].mean()
conv_by_device = orders.groupby('device')['converted'].mean()
conv_by_hour = orders.groupby(orders['created_at'].dt.hour)['converted'].mean()

# 找出异常维度
print("各渠道转化率:")
print(conv_by_channel.sort_values())

🕐 13:00 - 做深度分析

PM:"想了解一下不同用户群体的行为差异"

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 用户分群分析
rfm = orders.groupby('user_id').agg({
'created_at': lambda x: (pd.Timestamp('today') - x.max()).days,
'order_id': 'count',
'amount': 'sum'
})

# 用聚类自动分群
from sklearn.cluster import KMeans
kmeans = KMeans(n_clusters=4, random_state=42)
rfm['segment'] = kmeans.fit_predict(rfm[['created_at', 'order_id', 'amount']])

# 各群体画像
for seg in range(4):
group = rfm[rfm['segment'] == seg]
print(f"\n群体{seg}: {len(group)}人")
print(f" 平均消费: ¥{group['amount'].mean():,.0f}")
print(f" 平均订单数: {group['order_id'].mean():.1f}")

🕓 16:00 - 制作可视化报告

1
2
3
4
5
6
7
8
9
10
11
12
13
import matplotlib.pyplot as plt
import seaborn as sns

fig, axes = plt.subplots(2, 2, figsize=(16, 12))

# 4张核心图表
sns.barplot(data=summary, x='channel', y='conversion', ax=axes[0,0])
sns.lineplot(data=trend, x='date', y='gmv', ax=axes[0,1])
sns.heatmap(corr_matrix, annot=True, ax=axes[1,0])
sns.scatterplot(data=user_data, x='frequency', y='monetary', hue='segment', ax=axes[1,1])

plt.tight_layout()
plt.savefig('daily_report.png', dpi=150)

🕔 17:00 - 发送日报邮件

1
2
3
4
5
6
7
# 自动化发送报告
import smtplib
from email.mime.multipart import MIMEMultipart

msg = MIMEMultipart()
msg['Subject'] = f'数据日报 - {yesterday.date()}'
# ... 附件添加和发送

一天总结:约60%时间做数据处理,20%做分析,20%做沟通和报告。

数据分析岗位薪资参考

城市初级(0-1年)中级(1-3年)高级(3-5年)专家(5年+)
北京12-18K18-30K30-45K45-60K+
上海12-18K18-28K28-40K40-55K+
深圳11-17K17-28K28-40K40-55K+
杭州10-16K16-25K25-38K38-50K+
成都8-14K14-22K22-32K32-45K+

数据来源:Boss直聘、拉勾网 2025年数据,仅供参考

学员真实反馈

"学完这套课程,我从Excel手动处理转到了Python自动化。原来每天2小时的日报,现在5分钟搞定。" —— 小李,运营专员

"RFM模型那一课太实用了,我直接用来做了用户分层方案,老板很满意。" —— 小张,数据分析师

"之前一直想学Python但不知道从哪开始,这套课程从环境搭建到实战项目一条龙,跟着做就行。" —— 小王,财务主管

数据分析学习的3个阶段

阶段1:跟着做(Week 1-3)

  • 照着课程代码敲一遍
  • 把示例数据换成自己的数据
  • 目标:能独立完成基本的数据处理

阶段2:自己做(Week 4-6)

  • 找一个真实的数据集
  • 从头到尾自己分析一遍
  • 目标:能独立完成一个分析项目

阶段3:教别人(Week 7+)

  • 把你的分析过程写成博客
  • 给同事分享你的经验
  • 目标:真正理解,融会贯通

如何用数据分析涨薪

1
2
3
4
5
6
7
8
9
10
# 涨薪公式
薪资提升 = 技能提升 × 可见度 × 时机

# 技能提升:学完本课程 = +30%
# 可见度:做2-3个可见项目 = +20%
# 时机:在绩效评估前展示成果 = +10%
# 总计:约 +60% 薪资提升空间

# 关键不是学了多少,而是做出了什么
# 简历上写 "会用Pandas" < "用Python自动化了日报,节省每天2小时"

💬 加入学习交流群

一个人走得快,一群人走得远。

扫码加入Python数据分析学习群

👉 点击加入交流群

群里你将获得:

  • 📚 每日学习资料分享
  • ❓ 技术问题互助解答
  • 💼 内推岗位信息发布
  • 🎉 不定期直播答疑

📚 推荐教材

主教材《Excel+Python 飞速搞定数据分析与处理(图灵出品)》

这本书完美结合了Excel和Python,非常适合初学者过渡。


🔗 相关课程


💬 联系我

平台账号/链接
微信扫码加好友
微博@程序员晚枫
知乎@程序员晚枫
抖音@程序员晚枫
小红书@程序员晚枫
B站Python自动化办公社区

主营业务:AI编程培训、企业内训、技术咨询


💡 最后的话:数据是新时代的石油,而数据分析能力是开采石油的工具。掌握它,你就能在职场中创造更大的价值。

期待在课程中见到你!

🎓 AI 编程实战课程

想系统学习 AI 编程?程序员晚枫的 AI 编程实战课 帮你从零上手!