You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在rsample生成的嵌套Bootstrap对象上计算Gini系数

解决方案

可以结合dplyr和purrr包实现需求,无需展开嵌套对象或使用for循环,具体步骤如下:

  1. 加载所需依赖包:
library(rsample)
library(purrr)
library(pROC)
library(dplyr)
  1. 为Sampled_Data添加Gini列:
Sampled_Data <- Sampled_Data %>%
  mutate(Gini = map_dbl(splits, ~ {
    # 提取每个bootstrap样本的训练集(apparent样本对应原数据集)
    sample_data <- training(.x)
    # 计算Gini系数
    2 * auc(sample_data$Status, sample_data$Expenses) - 1
  }))

运行后Sampled_Data会生成你期望的结构,示例如下:

splits                id            Gini
  <list>                <chr>         <dbl>
1 <split [34338/12635]> Bootstrap1    0.xx
2 <split [34338/12592]> Bootstrap2    0.yy
3 <split [34338/34338]> Apparent      0.zz

关键说明

  • map_dbl():purrr包的迭代函数,针对splits列的每个split对象计算数值结果,直接生成数值型的Gini列。
  • training():rsample包的函数,用于从split对象中提取重采样后的训练数据集(apparent样本的训练集即为原始数据集)。

内容的提问来源于stack exchange,提问作者Rgrvkfer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 02:04:54