Я выполнял драгирование, используя пакет MuMIn очень большой глобальной модели в качестве трамплина с конечной целью получения значений важности каждой переменной.Земснаряд успешно работал за 2 дня, но позже мне понадобилось добавить 2 переменные, и после их добавления он не работал до конца.Он работал в течение 7 дней в первый раз, прежде чем R рухнул (я предполагаю), потому что, когда я проверил его в следующий раз, R выключился, и когда я снова запустил RStudio, сообщений об ошибках не было, и это было новое окно.Я снова запустил код, и на этот раз он выполнялся в течение 8 дней, прежде чем делать то же самое.
Я объясню свою глобальную модель и подмножества, чтобы было понятно, почему код выполняется так долго:игра с 19 переменными и 4 терминами взаимодействия (все числовые, за исключением «года», который является категоричным).Существуют определенные переменные, которые не могут появляться вместе в модели, потому что одна является альтернативной версией другой, поэтому я их поднастроил.Ситуация усложняется с помощью терминов взаимодействия, потому что, когда термин взаимодействия находится в модели, сглаженная версия термина не может быть основным эффектом, поскольку немодулированная версия термина автоматически включается и не может выглядеть как несглаженная версия термина какосновной эффект, когда член взаимодействия отсутствует в модели, поскольку уже может быть сглаженная версия члена.Любой из этих вариантов приведет к двойному представлению одного термина в модели, поэтому я также выделил эти опции.Вот код, показывающий глобальную модель и код для драга:
library(MuMIn)
options(na.action = "na.fail")
real.model2 <- gam(resqpa ~ factor(year) + s(elev) + factor(year)*elev +
s(bf1) + s(bf2) + s(bf3) + s(open) + s(water) + s(bfbs1) + s(bfbs2) +
s(bfbs3) + s(bs2) + s(bs3) + s(mix) + s(cs1) + s(cs2) + factor(year)*bfbs2 +
factor(year)*bfbs3 + factor(year)*bs2 + factor(year)*bs3 + s(allbf) + s(ct1)
+ s(ct2) + s(allcs), family=binomial(link="cloglog"))
fits6 <- dredge(real.model2, subset = (!("s(allbf)" & "s(bf1)"))
& (!("s(allbf)" & "s(bf2)"))
& (!("s(allbf)" & "s(bf3)"))
& (!("s(ct1)" & "s(bf1)"))
& (!("s(ct1)" & "s(bfbs1)"))
& (!("s(ct2)" & "s(bf2)"))
& (!("s(ct2)" & "s(bfbs2)"))
& (!("s(ct2)" & "s(bs2)"))
& (!("s(allcs)" & "s(cs1)"))
& (!("s(allcs)" & "s(cs2)"))
& (!(`s(elev)` & "elev:factor(year)")) & (!elev | `elev:factor(year)`)
& (!(`s(bfbs2)` & "bfbs2:factor(year)")) & (!bfbs2 | `bfbs2:factor(year)`)
& (!(`s(bfbs3)` & "bfbs3:factor(year)")) & (!bfbs3 | `bfbs3:factor(year)`)
& (!(`s(bs2)` & "bs2:factor(year)")) & (!bs2 | `bs2:factor(year)`)
& (!(`s(bs3)` & "bs3:factor(year)")) & (!bs3 | `bs3:factor(year)`))
После сбоя R во второй раз я запустил диагностику;однако отметка времени для ошибки не соответствовала времени, когда произошел сбой R, поэтому я не знаю, информативно это или нет.
24 Sep 2018 03:06:26 [rdesktop] ERROR system error 231 (All pipe instances
are busy); OCCURRED AT: virtual void
rstudio::core::http::NamedPipeAsyncClient::connectAndWriteRequest()
Это проблема с необходимостью большей вычислительной мощности или есть более краткий / более правильный способ написания этого кода, который позволит его завершить?Заранее спасибо за любую помощь с этим!