Я работаю с историческими данными о концентрации питательных веществ с ряда станций мониторинга, а также с соответствующими историческими потоками. Я пытаюсь написать прогностические уравнения регрессии для оценки концентраций на станциях, которые сейчас закрыты. Я просмотрел несколько руководств по пакету MGCV и решил, что марковские случайные поля подойдут для того, что я делаю. Я не был уверен, как выбрать определенные параметры для построения регрессии из более крупного фрейма данных, поэтому я настроил фреймы данных так, чтобы они содержали только информацию, необходимую для регрессии каждой станции. Вот пример для станции C9:
C9_TP_Reg
:
Station, Date.x, Month, Year, Day, TP, SWP, CVP
D19, 1975-1-07, 1, 1975, 7, 0.1, 3593, 1071
C9, 1975-1-22, 1, 1975, 22, 0.16, 1914, 3483
D28A, 1975-02-03, 2, 1975, 3, 0.11, 2360, 4506
...
Это большой набор данных, который охватывает несколько лет...
Я попытался написать свою регрессию, используя следующий код:
TP_C9 <- gam(TP ~ s(Date.x) + s(Station,bs="mrf",xt=list(nb=nb)) +
s(SWP) + s(CVP), data=C9_TP_reg)
Я получил эту ошибку:
Error in names(dat) <- object$term : 'names' attribute [1] must be the same length as the vector [0]
Если кто-нибудь может мне помочь, я был бы очень благодарен. Я часами просматривал руководства по пакету MGCV и не могу заставить его работать.
Я предполагаю, что если я просто подойду для всех станций, я смогу переделать уравнение и решить для C9, чтобы оценить будущие концентрации...
Station
как фактор? - person Gavin Simpson   schedule 11.06.2020