学习过程中的有疑问:plt.什么意思?EDA什么意思
一、plt是什么意思?
很多初学者看到:
plt.show() plt.plot() plt.savefig() plt.subplots()都会问:
为什么都是 plt?
其实:
plt不是 Python 关键字,也不是固定语法。
它只是一个变量名(别名,alias)。
它来自哪里?
一般在代码最前面都会有:
import matplotlib.pyplot as plt把它拆开来看:
import表示:
导入一个库。
matplotlib表示:
Python 最经典的画图库。
pyplot表示:
matplotlib 里面专门负责画图的模块(module)。
可以理解成:
matplotlib(一本书) ├── pyplot(画图) ├── animation(动画) ├── colors(颜色) ├── patches(图形) ...最后:
as plt表示:
给
matplotlib.pyplot起一个更短的名字。
就像:
你的名字:
张三别人平时叫:
小张所以:
import matplotlib.pyplot as plt实际上就是:
以后别叫 matplotlib.pyplot 这么长了, 直接叫 plt 就行。举个例子
原本应该写:
matplotlib.pyplot.show()太长。
于是:
import matplotlib.pyplot as plt以后就可以写:
plt.show()简单很多。
所以:
plt.show()真正完整写法其实是:
matplotlib.pyplot.show()plt.后面的点(.)是什么意思?
很多初学者都会问:
plt.show()为什么有个:
.这个点叫:
成员访问符(dot operator)
意思是:
调用这个对象里面的东西。
例如:
plt.show()意思就是:
调用 pyplot 模块里的 show() 函数。同样:
plt.savefig()就是:
调用 pyplot 模块里的 savefig() 函数。所以:
plt 就像一个工具箱。 show() savefig() plot() hist() 都是工具箱里的工具。为什么叫 pyplot?
因为它最早就是模仿 MATLAB 的画图方式。
所以:
plt.plot()非常像 MATLAB。
常见的 plt 函数
| 代码 | 作用 |
|---|---|
plt.plot() | 折线图 |
plt.scatter() | 散点图 |
plt.hist() | 直方图 |
plt.bar() | 柱状图 |
plt.boxplot() | 箱线图 |
plt.subplots() | 创建画布 |
plt.show() | 显示图片 |
plt.savefig() | 保存图片 |
plt.tight_layout() | 自动调整布局 |
二、EDA 是什么意思?
EDA 是:
Exploratory Data Analysis
中文:
探索性数据分析
为什么叫探索?
因为:
刚拿到数据的时候,
你什么都不知道。
例如:
半导体数据:
590个传感器 1567片晶圆你不知道:
哪些传感器坏了? 哪些数据缺失? 哪些特征最重要? 数据是不是平衡? 有没有异常值? 是不是重复数据?所以:
第一步不是训练模型。
而是:
探索(Explore)数据。
这就是:
EDA。
为什么要做 EDA?
举个例子。
假设老板给你:
100万条数据你直接:
RandomForest.fit()可能:
准确率:
99%结果:
后来发现:
90%的数据都是空值。模型:
根本不可信。
所以:
EDA 就像:
医生看病:
先检查 ↓ 再开药而不是:
直接吃药。EDA 一般做什么?
通常包括下面几项。
① 数据长什么样?
例如:
features.shape输出:
1567 × 590说明:
1567个样本 590个特征② 缺失值分析
例如:
features.isna().sum()看:
哪些传感器缺失最多?③ 类别比例
例如:
labels.value_counts()看:
Pass 1463 Fail 104是不是:
类别不平衡。
④ 特征分布
例如:
hist() boxplot()看:
数据是不是: 正态? 偏态?⑤ 异常值
例如:
100 101 99 100 10000最后:
10000就是:
异常值。
⑥ 特征之间关系
例如:
相关性:
Feature A Feature B 0.99说明:
高度相关。
可能:
后面:
做:
PCA SelectKBest⑦ 数据质量
例如:
重复数据:
有没有? 空数据? 重复样本?EDA 的最终目的
很多人以为:
EDA:
就是:
画图。
其实:
不是。
真正目的只有一句话:
了解数据,发现问题,为后续的数据清洗、特征工程和模型训练提供依据。
在你的 SECOM 项目里
EDA 就是:
读取数据 ↓ 统计样本数量 ↓ 统计Pass/Fail比例 ↓ 统计缺失值 ↓ 画缺失值图 ↓ 画类别分布 ↓ 分析异常值 ↓ 分析相关性 ↓ 决定下一步怎么清洗数据所以:
你现在做的:
01_data_exploration.ipynb就是:
整个项目的:
EDA(探索性数据分析)阶段。
最后送你一个 AI 项目通用流程(以后所有 GitHub 项目几乎都遵循)
数据集 │ ▼ EDA(探索数据) │ ├── 数据规模 ├── 缺失值 ├── 类别比例 ├── 特征分布 ├── 异常值 └── 相关性 │ ▼ 数据清洗(Cleaning) │ ▼ 特征工程(Feature Engineering) │ ▼ 模型训练(Model Training) │ ▼ 模型评估(Evaluation) │ ▼ 模型解释(SHAP / LIME) │ ▼ 部署(Deployment)你现在正处在第一步EDA。这一步看似没有训练模型,但它决定了后面所有步骤是否建立在可靠的数据基础上。在工业场景(半导体、材料、新能源)中,很多项目花在 EDA 和数据清洗上的时间往往比训练模型还要多。