如何使用python根据输入值划分数组

如何使用python根据输入值划分数组,python,machine-learning,data-science,knn,Python,Machine Learning,Data Science,Knn,我们假设KNN中的fold值是N,我们需要将数组分成N等分,对于fold值的每次迭代,我们需要对序列进行划分,并以这样的方式进行测试 example : fold is 5 1. In First iteration It Consider last means 5th part as test data and rest train data 2. In Second iteration It Consider second last means 4th part as test data a

我们假设KNN中的fold值是N,我们需要将数组分成N等分,对于fold值的每次迭代,我们需要对序列进行划分,并以这样的方式进行测试

example :
fold is 5
1. In First iteration It Consider last means 5th part as test data and rest train data
2. In Second iteration It Consider second last means 4th part as test data and rest train data
3. In third iteration It Consider third last means 3rd part as test data and rest train data
... so on
5. In  Firth iteration It Consider first means 1st part as test data and rest train data

我们如何在Python中实现这一点,请您解释一下。

我认为您需要KFold


您是对的,但我们必须手动执行此操作,这意味着我们不打算使用numpy和panda lib以外的其他工具。。我们没有使用任何sklearn库。。你能帮我怎么做吗
# you can declare number of splits here
kfold = model_selection.KFold(n_splits=5, random_state=42)
# your model goes here. 
model = NearestNeighbors(n_neighbors=2, algorithm='ball_tree')
# this will fit your model 5 times and use 1/5 as test data and 4/5 as training data
results = model_selection.cross_val_score(model, X_train,  y_train, cv=kfold)