Создание набора перекрестной проверки Kfold без склеарна - PullRequest
1 голос
/ 02 октября 2019

Я пытаюсь разделить мои данные на K-кратные данные с помощью набора поездов и тестов. Я застрял в конце:

У меня есть пример набора данных:

       [1,2,3,4,5,6,7,8,9,10]

Я успешно создал раздел для 5-кратной перекрестной проверки, и вывод

     fold=[[2, 1], [6, 0], [7, 8], [9, 5], [4, 3]]

Теперь я хочу создать K таких экземпляров, имеющих данные обучения K-1 и 1 набор проверки.

Я использую этот код:

    ```
      cross_val={"train":[],"test":[]}
       new_fold=folds.copy()
       for i in range(4):
           val=folds.pop(i)
           cross_val["train"].append(folds)
           cross_val["test"].append(val)

           folds[i:i]=[val]```

Вывод, который я получаюis:

  {'train': [[[6, 0], [7, 8], [9, 5], [4, 3]],
           [[6, 0], [7, 8], [9, 5], [4, 3]],
          [[6, 0], [7, 8], [9, 5], [4, 3]],
        [[6, 0], [7, 8], [9, 5], [4, 3]]],
   'test': [[6, 0], [7, 8], [9, 5], [4, 3]]}

Это неверный вывод, который я получаю.

Но я хочу вывод как

          train                                   test
          [[6, 0], [7, 8], [9, 5], [4, 3]]      [2,1]
          [[2, 1], [7, 8], [9, 5], [4, 3]]      [6,0]
          [[6, 0], [2, 1], [9, 5], [4, 3]]      [7,8]
          [[6, 0], [7, 8], [9, 5], [2, 1]]       [4,3]
          [[6, 0], [7, 8], [2, 1], [4, 3]]       [9,5]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...