集群交叉验证使用一些变量的 k-means 聚类将数据分成 V 组不相交的集合。分析数据的重采样由 V-1 的折叠/簇组成,而评估集包含最终的折叠/簇。在基本交叉验证(即无重复)中,重采样的数量等于 V。
用法
clustering_cv(
data,
vars,
v = 10,
repeats = 1,
distance_function = "dist",
cluster_function = c("kmeans", "hclust"),
...
)
参数
- data
-
一个 DataFrame 。
- vars
-
用于对数据进行聚类的裸变量名称向量。
- v
-
数据集的分区数。
- repeats
-
重复集群分区的次数。
- distance_function
-
应该使用哪个函数来计算距离?默认为
stats::dist()
。您也可以提供自己的函数;请参阅Details
。 - cluster_function
-
应该使用哪个函数进行聚类?选项为
"kmeans"
(使用stats::kmeans()
)或"hclust"
(使用stats::hclust()
)。您也可以提供自己的函数;请参阅Details
。 - ...
-
额外的参数传递给
cluster_function
。
细节
vars
参数中的变量用于将数据 k-means 聚类为不相交的集合或用于数据的分层聚类。这些簇用作交叉验证的折叠。根据数据的分布方式,每次折叠中的点数量可能不同。
您可以选择向 distance_function
提供自定义函数。该函数应获取一个 DataFrame (通过 data[vars]
创建)并返回一个带有数据点之间距离的 stats::dist()
对象。
您可以选择向 cluster_function
提供自定义函数。该函数必须采用三个参数:
-
dists
,一个带有数据点之间距离的stats::dist()
对象 -
v
,一个长度为 1 的数字,表示要创建的折叠数 -
...
,将任何其他命名参数传递给您的函数
该函数应返回长度为 nrow(data)
的簇分配向量,向量的每个元素对应于数据帧的匹配行。
相关用法
- R rsample complement 确定评估样本
- R rsample validation_set 创建验证拆分以进行调整
- R rsample initial_split 简单的训练/测试集分割
- R rsample populate 添加评估指标
- R rsample int_pctl 自举置信区间
- R rsample vfold_cv V 折交叉验证
- R rsample rset_reconstruct 使用新的 rset 子类扩展 rsample
- R rsample group_mc_cv 小组蒙特卡罗交叉验证
- R rsample group_vfold_cv V 组交叉验证
- R rsample rolling_origin 滚动原点预测重采样
- R rsample reverse_splits 反转分析和评估集
- R rsample group_bootstraps 团体自举
- R rsample labels.rset 从 rset 对象中查找标签
- R rsample get_fingerprint 获取重采样的标识符
- R rsample bootstraps 引导抽样
- R rsample validation_split 创建验证集
- R rsample reg_intervals 具有线性参数模型的置信区间的便捷函数
- R rsample initial_validation_split 创建初始训练/验证/测试拆分
- R rsample get_rsplit 从 rset 中检索单个 rsplit 对象
- R rsample loo_cv 留一交叉验证
- R rsample slide-resampling 基于时间的重采样
- R rsample as.data.frame.rsplit 将 rsplit 对象转换为 DataFrame
- R rsample labels.rsplit 从 rsplit 对象中查找标签
- R rsample mc_cv 蒙特卡罗交叉验证
- R rsample tidy.rsplit 整洁的重采样对象
注:本文由纯净天空筛选整理自Hannah Frick等大神的英文原创作品 Cluster Cross-Validation。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。