econml.sklearn_extensions.model_selection.WeightedKFold
- class econml.sklearn_extensions.model_selection.WeightedKFold(n_splits=3, n_trials=10, shuffle=False, random_state=None)[source]
基类:
object
用于带权重数据的 K 折交叉验证器。
提供训练集/测试集索引,将数据分割成训练集和测试集。将数据集分割成 K 个大小大致相等且总权重相等的折。
默认情况下,会尝试多次(由 n_trials 控制)使用 sklearn.model_selection.KFold 来寻找权重平衡的 K 向分割。如果找不到这样的分割,它将退回到更严格的权重分层算法。
- 参数
n_splits (int, 默认 3) – 折叠数。必须至少为 2。
n_trials (int, 默认 10) – 在退回到另一种权重分层算法之前,尝试 sklearn.model_selection.KFold 的次数。
shuffle (bool, 可选) – 在将数据分割成批次之前是否打乱数据。
random_state (int, RandomState 实例, 或 None, 默认 None) – 如果是 int,random_state 是随机数生成器使用的种子;如果是
RandomState
实例,random_state 是随机数生成器;如果是 None,随机数生成器是RandomState
实例,由np.random
使用。在shuffle
== True 时使用。
方法
__init__
([n_splits, n_trials, shuffle, ...])get_n_splits
(X, y[, groups])返回交叉验证器中的分割迭代次数。
split
(X, y[, sample_weight])生成索引以将数据分割为训练集和测试集。