当前位置: 首页 > news >正文

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}") # 查看特征列名

http://www.cnnetsun.cn/news/27084.html

相关文章:

  • 227827827
  • MCU的启动流程你了解么?
  • 逻辑回归(Logistic Regression)进行多分类的实战
  • RNN(循环神经网络)原理
  • 人机协同重构创作生态——生成式AI赋能内容产业的变革与思考
  • Java 小白求职者在互联网大厂的面试实录:从 Spring Boot 到微服务架构
  • V助手舆情分析智能体:重塑舆情分析,从“人找信息”到“信息为人”
  • 连接2026:十款远程控制软件真实力横评与选择指南
  • 计算机毕业设计springboot基于Spark++Vue.js的学生管理系统 Spark+Vue 高校学生综合信息管理平台 基于 SpringBoot+Spark+Vue 的全链路学生事务中心
  • JavaScript 集合操作的哈希碰撞:攻击者如何利用特殊 Key 导致 Map/Set 性能降级到 O(N)
  • 为什么 C盘空间会莫名其妙减少(即使没装新软件)?
  • 17、深入理解 Linux 文件系统机制与结构
  • 29、Linux 软件使用与故障排除指南
  • 从入门到转行:网络安全自学与跳槽的终极建议
  • 网络安全小白自学之路,别拜师了,求人不如求己_网络安全小白怎么自学
  • 从系统运维到网络安全工程师,8个月转行真实经验分享!
  • 算法系列(Algorithm)- 快速排序
  • RobotStudio2025全功能授权
  • IsaacLab中UR机械臂与Robotiq夹爪的5大配置难点与解决方案
  • cmark Markdown解析器终极指南:从入门到精通
  • 4-bit量化FLUX模型:让专业AI绘图走进寻常百姓家
  • Excel VBA快速入门:7天从零到精通终极指南
  • AutoHotkey鼠标轨迹自动化终极指南:从零开始实现精准操作回放
  • UxPlay 终极指南:在 Linux 系统上实现 AirPlay 镜像的完整教程
  • 1-2 惜败!国安亚冠连败 中超 16 强魔咒难破
  • 一键解锁阅读3.0书源终极合集:1629个精品资源任你选
  • 一般人不懂Windows
  • Java 基于多线程机制的专项实验
  • 51、Linux 系统中 shell 环境管理与脚本编写全解析
  • 53、编写高效 Shell 脚本:从基础到实践