Использование предопределенных расщеплений в функции ПЦР R Пакет PLS - PullRequest
0 голосов
/ 27 марта 2019

Для обеспечения хорошего представительства населения я создал пользовательские наборы проверок на основе моих данных обучения.Тем не менее, я не уверен, как я это связываю в PCR в R

. Я попытался добавить список в аргумент сегментов, где каждый индекс похож на то, что вы делаете в предопределенном python итераторе split, который выполняется, но выполняетсянавсегда.Поэтому я чувствую, что где-то допускаю ошибку

 pcr(y~X,scale=FALSE,data=tdata,validation="CV",segments=test_fold)

, где тестовое сгиб - это список, содержащий набор валидации, который принадлежит индексу

Например, если данные обучения составлены из 9samples и я хочу использовать первые три в качестве первого набора проверки для son

test_fold<-c(1,1,1,2,2,2,3,3,3) 

Это выполняется, но это очень медленно, где, если я делаю обычное "CV", оно запускается за минуты.Пока результаты выглядят хорошо, но у меня есть более тысячи пробежек, которые мне нужно сделать, и мне потребовался 1 час, чтобы пройти одну.Так что если кто-нибудь знает, как я могу ускорить это, я был бы благодарен.

1 Ответ

0 голосов
/ 27 марта 2019

Таким образом, параметры сегментов должны быть списком из нескольких векторов.Итак, снова с 9 выборками, если я хочу, чтобы первые три были в первом наборе проверки, следующие три во втором наборе проверки и так далее должны быть

test_vec<-list(c(1,2,3),c(4,5,6),c(7,8,9)) 
...