1. 官方文档检索方式
- 官网 :库的官方文档站点(如
scikit-learn.org、pdpbox.readthedocs.io),是最权威的入口。 - GitHub :库的 GitHub 仓库,通常包含
README.md和docs/目录,适合查看源码和最新变更。
2. 版本一致性原则
- 阅读文档时,必须确保文档版本与你安装的库版本一致,否则会出现参数 / 用法不匹配的报错。
- 查看版本:
pip show pdpbox/import pdpbox; print(pdpbox.__version__) - 切换文档版本:在官网通常有版本选择下拉框,或在 GitHub 上切换对应 Tag。
3. 阅读类文档的核心关注点
当你查看一个类的文档时,重点看这三点:
- 实例化参数 :创建类对象时需要传入的参数(如
PDPIsolate(...)的model、data、feature等)。 - 方法参数 :调用类的方法时需要的参数(如
.plot()里的figsize、plot_lines等)。 - 返回值 :方法执行后返回的对象类型(如绘图方法会返回
matplotlib的Axes对象)。
4. 绘图的底层逻辑
-
高级绘图库(如
pdpbox、seaborn)本质是对底层库(如matplotlib)的封装。 -
理解这一点后,你可以通过修改底层
Axes对象来自定义图表样式(如调整标题、坐标轴、颜色)。python# 安装依赖(如未安装) # pip install pdpbox scikit-learn pandas matplotlib import pandas as pd from sklearn.datasets import load_iris from sklearn.ensemble import RandomForestClassifier from pdpbox import pdp, get_dataset, info_plots # 1. 准备数据和模型 data = load_iris() df = pd.DataFrame(data.data, columns=data.feature_names) df['target'] = data.target model = RandomForestClassifier(n_estimators=100, random_state=42) model.fit(df.drop('target', axis=1), df['target']) # 2. 创建PDP对象(参考文档:PDPIsolate类) pdp_isolate = pdp.PDPIsolate( model=model, df=df, model_features=data.feature_names, feature='petal length (cm)', # 选择要分析的特征 feature_name='petal length' ) # 3. 绘制PDP图(参考文档:plot()方法) fig, axes = pdp_isolate.plot( figsize=(8, 5), plot_lines=True, # 显示个体预测线 frac_to_plot=0.5 # 抽样显示部分样本线 ) # 4. 自定义图表(底层matplotlib调用) axes[0].set_title('Petal Length Partial Dependence Plot (Iris Dataset)') axes[0].set_xlabel('Petal Length (cm)') axes[0].set_ylabel('Predicted Probability') # 显示图表 import matplotlib.pyplot as plt plt.show()总结
-
读官方文档的核心:找版本 → 看类参数 → 看方法参数与返回值。
-
绘图时:高级库封装了易用接口,底层仍可通过
matplotlib精细调整。 -
作业思路:任选
pdpbox里的类(如PDPInteract做交互特征、info_plots做特征分布),按文档步骤实例化→调用方法→绘图即可。