使用R数据集菱形,我想知道initial_split函数如何对连续变量"x“进行分层,以便创建测试和训练集?ie钻石(initial_split,probability=0.8,strata=x)。我已经读到连续的数据"x“被按顺序分成几个箱,但我不能找出有多少箱,或者箱的数量是否可以由用户设置?
发布于 2021-05-12 20:56:48
在对连续变量进行分层时,initial_split()使用的中断数由breaks
参数指定。breaks
默认为4个存储箱。
library(rsample)
library(ggplot2)
data("diamonds")
initial_split(diamonds, strata = x, breaks = 4)
#> <Analysis/Assess/Total>
#> <40453/13487/53940>
在幕后发生的事情是,make_strata()
被用来创建一个因子变量,然后用于分层。系数变量将基于百分位数创建,以确保地层大小大致均匀。
table(make_strata(diamonds$x, breaks = 4))
#>
#> [0,4.71] (4.71,5.7] (5.7,6.54] (6.54,10.7]
#> 13521 13665 13379 13375
table(make_strata(diamonds$x, breaks = 10))
#>
#> [0,4.36] (4.36,4.54] (4.54,4.82] (4.82,5.23] (5.23,5.7] (5.7,6.08]
#> 5774 5032 5394 5463 5523 5186
#> (6.08,6.42] (6.42,6.7] (6.7,7.31] (7.31,10.7]
#> 5407 5429 5458 5274
https://stackoverflow.com/questions/67501445
复制相似问题