4
Hadley Wickham proposed它可以使用dplyr
包執行引導,他的建議was improved然後implemented in broom
package。是否也可能實現k-fold交叉驗證?dplyr中的k-fold交叉驗證?
我想,第一步(選擇列車組)是非常簡單的:
crossvalidate <- function (df, k = 5) {
n <- nrow(df)
idx <- sample(rep_len(1:k, n))
attr(df, "indices") <- lapply(1:k, function(i) which(idx != i))
attr(df, "drop") <- TRUE
attr(df, "group_sizes") <- nrow(df) - unclass(table(idx))
attr(df, "biggest_group_size") <- max(attr(df, "group_sizes"))
attr(df, "labels") <- data.frame(replicate = 1:k)
attr(df, "vars") <- list(quote(replicate))
class(df) <- c("grouped_df", "tbl_df", "tbl", "data.frame")
df
}
但不知何故,我找不到任何地方的attr(, "indices")
任何文檔,瞭解它是否以某種方式可以使用索引「其他」選擇測試組指數。你有什麼想法?
你應該看看['modelr'](https://github.com/hadley/ modelr),Hadley的包含'crossv_kfold'功能的軟件包。 – Axeman