有人可以帮助我了解StratifiedShuffleSplit的功能吗?我是这个图书馆的新手。我了解分层采样背后的原理,但是就代码而言,StratifiedShuffleSplit函数返回的确切信息是什么?
我正在阅读的书包含以下代码,但是我没有完全遵循。该函数是否确实在数据帧上添加了一个区分测试和训练的索引,这就是为什么他们随后使用.loc的原因?究竟将Income_cat列作为拆分依据是什么?谢谢!
from sklearn.model_selection import StratifiedShuffleSplit
split = StratifiedShuffleSplit(n_splits=1, test_size=0.2, random_state=42)
for train_index, test_index in split.split(housing, housing["income_cat"]):
strat_train_set = housing.loc[train_index]
strat_test_set = housing.loc[test_index]
答案 0 :(得分:0)
该函数是否确实在数据框上添加了一个索引 区分测试和训练,这就是为什么 使用.loc?
它没有添加索引,索引已经存在,但是是的,该函数基本上会返回索引的拆分,以便您可以使用.loc
将incidence_cat列拆分的确切含义是什么?
分层随机拆分的想法是,对于每个拆分,它将标签的原始分布保留在y中。