前言
数据分析是大数据技术的重要应用领域。本文将基于 4 个典型实战案例,系统讲解 Python 在数据挖掘四大核心任务中的应用:关联规则分析、分类预测、回归建模和聚类分析。案例涵盖电影类型关联挖掘、心脏病诊断预测、大学录取率分析和 NBA 球员聚类等实际场景,完整呈现 pandas 数据处理、scikit-learn 模型构建以及 matplotlib 可视化等关键技术要点。
项目一:电影类型关联规则挖掘(Apriori 算法)
项目目标
通过挖掘电影类型间的潜在关联关系,发现强关联规则,为电影推荐和类型组合决策提供数据支持。
实施步骤
- 读取电影数据文件
- 过滤无类型标签的记录
- 将类型字符串转换为列表格式
import pandas as pd
from collections import defaultdict
# 数据加载与清洗
df = pd.read_csv('movies.csv')
df = df[df['genres'] != '(no genres listed)'] # 过滤无效记录
df['genres_list'] = df['genres'].apply(lambda x: x.split('|')) # 类型转换
total_movies = len(df) # 统计有效电影数量
频繁项集挖掘流程
- 计算各单项类型的支持度,筛选出满足最小支持度阈值(0.02)的频繁单项集
- 生成类型组合对,计算项集支持度,筛选出频繁二项集
- 关联规则生成:设置最小置信度(0.3),计算置信度和提升度(Lift>1 表示正相关),最终筛选出强关联规则
核心分析结果
Top10 强关联规则:
| 前项 | 后项 | 支持度 | 置信度 | 提升度 |
|---|---|---|---|---|
| Animation | Children | 0.0311 | 0.4943 | 7.2265 |
| Children | Fantasy | 0.0215 | 0.3148 | 3.9226 |
| Mystery | Thriller | 0.0365 | 0.6178 | 3.1666 |
关键发现
- **动画类型(Animation)与儿童类型(Children)**展现出最强的关联性,提升度高达 7.23。数据分析显示,动画电影有 49.43% 的概率属于儿童片类型。
- **悬疑片(Mystery)与惊悚片(Thriller)**的组合具有最高的置信度(61.78%),这与电影类型搭配的市场惯例高度吻合。
- **动作片(Action)**与冒险片(Adventure)、惊悚片(Thriller)之间均存在显著的正相关关系。

