news 2026/4/22 11:32:42

Day 36 官方文档的阅读

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Day 36 官方文档的阅读

@浙大疏锦行

官方文档的检索方式:GitHub和官网

官方文档的阅读和使用:要求安装的包和文档为同一个版本

类的关注点:

a.实例化所需要的参数

b.普通方法所需要的参数

c.普通方法的返回值

绘图的理解:对底层库的调用

import pandas as pd import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import load_iris from pdpbox.info_plots import InteractTargetPlot # 导入核心类 # ===================== 1. 全局配置 & 数据准备 ===================== # 解决中文显示问题(matplotlib引擎) plt.rcParams['font.sans-serif'] = ['SimHei'] plt.rcParams['axes.unicode_minus'] = False # 加载鸢尾花数据集并格式化 iris = load_iris() iris_df = pd.DataFrame( data=np.c_[iris.data, iris.target], columns=[ 'sepal_length', 'sepal_width', 'petal_length', 'petal_width', 'target' ] ) # 目标变量为整数(0/1/2对应3类鸢尾花),无需额外编码 # ===================== 2. 初始化 InteractTargetPlot 类 ===================== # 核心:分析花瓣长度+花瓣宽度的交互与目标类别的关系 interact_target_plot = InteractTargetPlot( df=iris_df, # 包含特征和目标的DataFrame features=['petal_length', 'petal_width'], # 待分析的两个交互特征(列名) feature_names=['花瓣长度 (cm)', '花瓣宽度 (cm)'], # 特征显示名称(用于绘图标注) target='target', # 目标变量列名 num_grid_points=10, # 每个特征的网格点数(分箱数,默认10) grid_types='percentile', # 网格划分方式:percentile(分位数)/ equal(等距) percentile_ranges=None, # 分位数范围(None=0-100%) grid_ranges=None, # 自定义网格范围(如[[0,7],[0,3]]) cust_grid_points=None, # 自定义网格点(优先级高于num_grid_points) show_outliers=False, # 是否显示异常值 endpoints=True # 是否包含网格端点 ) # ===================== 3. 绘制交互目标图(Matplotlib引擎) ===================== # 适配多分类任务,绘制所有类别(也可指定which_classes=[0,1]仅绘前两类) fig, axes, summary_df = interact_target_plot.plot( which_classes=None, # 绘制所有类别(0/1/2) show_percentile=True, # 显示特征分位数标注 figsize=(14, 10), # 图表尺寸 dpi=300, # 分辨率(仅matplotlib生效) ncols=2, # 子图列数(多分类时自动分栏) annotate=True, # 标注每个网格点的详细信息(样本数/均值) plot_params={ # 自定义绘图样式 'cmap': 'viridis', # 配色方案 'title_fontsize': 16, 'label_fontsize': 12, 'tick_fontsize': 10 }, engine='matplotlib', # 绘图引擎:matplotlib/plotly template='plotly_white' # plotly模板(仅plotly生效) ) # 调整布局并保存/显示 plt.tight_layout() plt.savefig('iris_interact_target_matplotlib.png', bbox_inches='tight') plt.show() # ===================== 4. 扩展:Plotly引擎(交互式图表) ===================== # Plotly引擎生成可交互图表(支持缩放/悬停查看详情) fig_plotly, _, summary_df_plotly = interact_target_plot.plot( which_classes=[0, 1, 2], # 显式指定绘制所有3类 show_percentile=True, figsize=(14, 10), annotate=True, plot_params={ 'color_continuous_scale': 'RdBu_r' }, engine='plotly', # 切换为plotly交互式引擎 template='plotly_dark' # plotly深色模板 ) # 显示Plotly图表(Jupyter/浏览器中可交互) fig_plotly.show() # 保存Plotly图表为HTML fig_plotly.write_html('iris_interact_target_plotly.html') # ===================== 5. 查看统计结果 ===================== print("=== 交互特征网格统计摘要 ===") print(summary_df.head(10)) # 输出每个网格的目标变量统计(均值/样本数等) print(f"\n目标类别数:{interact_target_plot.n_classes}") # 查看推断的类别数(3) print(f"特征列名:{interact_target_plot.feature_cols}") # 查看特征列名

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/21 14:34:14

Python优化内存占用的技巧

Python 是一门为了开发效率而生的语言,其自动内存管理机制让开发者无需手动申请和释放内存。这种便利并非没有代价,Python 对象通常比 C 或 C 中的对应结构消耗更多内存。在处理大规模数据或在资源受限的容器环境中运行服务时,内存溢出&#…

作者头像 李华
网站建设 2026/4/21 17:51:28

I2C通信最全面的讲解:从协议到硬件设计

IIC( Inter-Integrated Circuit,or I2C)协议是由飞利浦半导体(现在的恩智浦半导体)开发,并于1982年发布的一种串行、半双工总线,主要用于近距离,低速的芯片之间的通信;I2…

作者头像 李华
网站建设 2026/4/19 18:31:29

5 分钟快速入门 Gitlab CI/CD

🚀 快速掌握 GitLab CI/CD:自动化你的开发流程 GitLab CI/CD 是一个功能强大的工具,它内置于 GitLab 中,用于自动化你的软件构建、测试和部署流程。如果你希望提升开发效率、减少人为错误并实现持续集成/持续部署(CI/…

作者头像 李华
网站建设 2026/4/18 5:34:49

毕业论文选题AI推荐:9大工具+热门方向合集

毕业论文选题AI推荐:9大工具热门方向合集 �� 核心AI工具对比速览 工具名称 核心功能 适用场景 生成速度 特色优势 aibiye 初稿生成/降重/格式优化 全学科通用 20-30分钟 支持理工科图表公式自动插入 aicheck 选题推荐/查重/AIGC检…

作者头像 李华
网站建设 2026/4/18 8:26:40

Java毕业设计做不出来可以找代做吗?

这是一个非常敏感且重要的问题,我需要给你最负责任、最真诚的回答。直接答案:强烈不建议,风险极高,有百害而无一利。我理解你现在可能感到焦虑和无助,但寻找代做是一条会让你陷入更大麻烦的危险捷径。让我详细分析一下…

作者头像 李华