以下是一个为期 **1 个月(30 天)**的详细学习计划,精确到每天的学习内容和练习作业,帮助你系统地掌握 NumPy 、Pandas 和 Matplotlib 的核心功能。
第 1 周:NumPy 基础
Day 1:NumPy 简介与数组创建
- 学习内容 :
- 安装 NumPy:
pip install numpy
- NumPy 的核心概念:数组(ndarray)、形状(shape)、数据类型(dtype)。
- 创建数组:
np.array()
、np.zeros()
、np.ones()
、np.arange()
、np.linspace()
。
- 安装 NumPy:
- 练习作业 :
- 创建一个包含 10 个元素的数组,元素值为 0 到 9。
- 创建一个 3x3 的全 1 矩阵。
- 创建一个从 0 到 1 的等间隔数组,包含 5 个元素。
Day 2:数组索引与切片
- 学习内容 :
- 数组索引:单元素索引、多元素索引。
- 数组切片:基本切片、步长切片。
- 布尔索引。
- 练习作业 :
- 创建一个 5x5 的随机数组,提取第 2 行和第 3 列的元素。
- 提取数组中大于 5 的元素。
- 使用切片获取数组的前 3 行和后 2 列。
Day 3:数组形状操作
- 学习内容 :
- 形状操作:
reshape()
、flatten()
、transpose()
。 - 数组拼接:
np.concatenate()
、np.stack()
。
- 形状操作:
- 练习作业 :
- 将一个 1x12 的数组转换为 3x4 的矩阵。
- 将两个 2x2 的数组按行和列拼接。
- 对一个 3x3 的数组进行转置操作。
Day 4:数组数学计算
- 学习内容 :
- 基本运算:加减乘除、矩阵乘法(
np.dot()
)。 - 统计函数:
np.sum()
、np.mean()
、np.std()
。
- 基本运算:加减乘除、矩阵乘法(
- 练习作业 :
- 计算一个数组的平均值和标准差。
- 对两个数组进行矩阵乘法。
- 计算数组中每个元素的平方。
Day 5:广播机制
- 学习内容 :
- 广播机制的概念和应用。
- 练习作业 :
- 创建一个 3x3 的数组和一个 1x3 的数组,使用广播机制进行加法运算。
- 创建一个 4x1 的数组和一个 1x4 的数组,使用广播机制进行乘法运算。
Day 6:综合练习
- 练习作业 :
- 创建一个 5x5 的随机数组,计算每行的最大值和每列的最小值。
- 对两个数组进行广播操作,理解广播机制。
Day 7:复习与总结
- 复习本周内容,完成未完成的练习作业。
第 2 周:Pandas 基础
Day 8:Pandas 简介与数据结构
- 学习内容 :
- 安装 Pandas:
pip install pandas
- Pandas 的核心数据结构:
Series
和DataFrame
。
- 安装 Pandas:
- 练习作业 :
- 创建一个包含 5 个元素的 Series。
- 创建一个 3x3 的 DataFrame,列名为 A、B、C。
Day 9:数据读取与写入
- 学习内容 :
- 读取 CSV、Excel 文件:
pd.read_csv()
、pd.read_excel()
。 - 写入文件:
to_csv()
、to_excel()
。
- 读取 CSV、Excel 文件:
- 练习作业 :
- 读取一个 CSV 文件并查看前 5 行数据。
- 将 DataFrame 写入 Excel 文件。
Day 10:数据查看与选择
- 学习内容 :
- 数据查看:
head()
、tail()
、info()
、describe()
。 - 数据选择:列选择、行选择、条件筛选。
- 数据查看:
- 练习作业 :
- 查看 DataFrame 的基本信息。
- 选择 DataFrame 的某一列和某一行。
- 根据条件筛选数据。
Day 11:数据清洗
- 学习内容 :
- 处理缺失值:
dropna()
、fillna()
。 - 去重:
drop_duplicates()
。
- 处理缺失值:
- 练习作业 :
- 删除包含缺失值的行。
- 用均值填充缺失值。
- 删除重复的行。
Day 12:数据分析
- 学习内容 :
- 分组聚合:
groupby()
、agg()
。 - 数据合并:
merge()
、concat()
。
- 分组聚合:
- 练习作业 :
- 对数据进行分组并计算每组的平均值。
- 合并两个 DataFrame。
Day 13:数据透视表
- 学习内容 :
- 数据透视表:
pivot_table()
。
- 数据透视表:
- 练习作业 :
- 创建一个数据透视表,计算每个类别的总和。
Day 14:复习与总结
- 复习本周内容,完成未完成的练习作业。
第 3 周:Matplotlib 基础
Day 15:Matplotlib 简介与基本绘图
- 学习内容 :
- 安装 Matplotlib:
pip install matplotlib
- 基本绘图:
plt.plot()
。
- 安装 Matplotlib:
- 练习作业 :
- 绘制一个简单的折线图。
Day 16:散点图与柱状图
- 学习内容 :
- 散点图:
plt.scatter()
。 - 柱状图:
plt.bar()
。
- 散点图:
- 练习作业 :
- 绘制一个散点图。
- 绘制一个柱状图。
Day 17:直方图与饼图
- 学习内容 :
- 直方图:
plt.hist()
。 - 饼图:
plt.pie()
。
- 直方图:
- 练习作业 :
- 绘制一个直方图。
- 绘制一个饼图。
Day 18:图表美化
- 学习内容 :
- 添加标题、标签:
plt.title()
、plt.xlabel()
、plt.ylabel()
。 - 添加图例:
plt.legend()
。
- 添加标题、标签:
- 练习作业 :
- 绘制一个折线图,添加标题、标签和图例。
Day 19:多图绘制
- 学习内容 :
- 子图:
plt.subplot()
。 - 多图布局:
plt.subplots()
。
- 子图:
- 练习作业 :
- 使用子图绘制多个图表。
Day 20:综合练习
- 练习作业 :
- 绘制一个包含折线图、柱状图和散点图的综合图表。
Day 21:复习与总结
- 复习本周内容,完成未完成的练习作业。
第 4 周:综合实战
Day 22-30:数据分析项目
- 项目目标:结合 NumPy、Pandas 和 Matplotlib 完成一个完整的数据分析项目。
- 项目步骤 :
- 数据获取:从 CSV、Excel 或 API 获取数据。
- 数据清洗:处理缺失值、去重、数据类型转换。
- 数据分析:使用 Pandas 进行数据分组、聚合、透视表分析。
- 数据可视化:使用 Matplotlib 绘制图表,展示分析结果。
- 项目示例 :
- 分析某电商平台的销售数据,计算每个月的销售额并绘制趋势图。
- 分析某城市的天气数据,绘制温度变化图。
通过这个详细的学习计划,你将在一个月内掌握 NumPy、Pandas 和 Matplotlib 的核心功能,并能够独立完成数据处理和分析任务。加油!