Lineare Regression mit Gewichten für ein Datum

Modelle zur Korrelations- und Regressionsanalyse

Moderator: EDi

Antworten
Regression
Beiträge: 76
Registriert: Mo Jan 15, 2018 9:57 am

Lineare Regression mit Gewichten für ein Datum

Beitrag von Regression » Fr Okt 12, 2018 9:24 am

Hallo Zusammen,

in der Linearen Regression möchte ich ein Datum vorhersagen, wo ein bestimmtes Wert erreicht wird, dabei sollen die aktuellen Werte (der letzte drittel) mehr gewicht erhalten, als die übrigen. Sei hierzu also der folgende Datensatz gegeben:

Code: Alles auswählen

DT<-data.table(Date=c("2018-02-26", "2018-02-27", "2018-02-28", "2018-03-01", "2018-03-02", "2018-03-05", "2018-03-06", "2018-03-08",
                       "2018-03-09", "2018-03-12", "2018-03-13", "2018-03-14", "2018-03-15", "2018-03-19", "2018-03-20" ,"2018-03-22",
                       "2018-03-24", "2018-03-26", "2018-03-27", "2018-03-28", "2018-03-29" ,"2018-03-30", "2018-04-03", "2018-04-04",
                       "2018-04-05", "2018-04-06", "2018-04-09", "2018-04-10", "2018-04-11" ,"2018-04-12", "2018-04-13", "2018-04-16",
                       "2018-04-17", "2018-04-18", "2018-04-19", "2018-04-20", "2018-04-23" ,"2018-04-24", "2018-04-25" ,"2018-04-26",
                       "2018-04-27", "2018-04-28", "2018-04-29", "2018-04-30", "2018-05-02" ,"2018-05-03", "2018-05-07", "2018-05-09",
                       "2018-05-14", "2018-05-15", "2018-05-16", "2018-05-18", "2018-05-22", "2018-05-23", "2018-05-25", "2018-05-31",
                      "2018-06-04" ,"2018-06-05" ,"2018-06-06" ,"2018-06-08" ,"2018-06-12" ,"2018-06-13" ,"2018-06-14" ,"2018-06-15",
                      "2018-06-16" ,"2018-06-18" ,"2018-06-20" ,"2018-06-21" ,"2018-06-25" ,"2018-06-27" ,"2018-07-02" ,"2018-07-03",
                       "2018-07-05" ,"2018-07-09" ,"2018-07-10", "2018-07-11", "2018-07-13" ,"2018-07-16", "2018-07-19", "2018-07-23"), Value=floor(jitter(100:21,5)))
DT[,Date:=as.Date(Date)]
Mein Ansatz bislang war:

Code: Alles auswählen

DT[,N:=rleidv(DT)]
DT[,weight:=ifelse(N> floor(.N*0.6), 2/3, 1/3)]
lm(Date ~ Value, data=DT, weights = weight)
Doch leider bekomme ich folgende Fehlermeldung:
Error in Ops.Date(y, wts) : * not defined for "Date" objects ]

Es muss doch eine Lösung geben das man auch das Datum gewichten kann :?:

Besten Dank im Voraus!
LG
Regression

jogo
Beiträge: 1020
Registriert: Fr Okt 07, 2016 8:25 am

Re: Lineare Regression mit Gewichten für ein Datum

Beitrag von jogo » Fr Okt 12, 2018 11:45 am

Hallo Regression,

Code: Alles auswählen

library("data.table")

DT<-data.table(Date=c("2018-02-26", "2018-02-27", "2018-02-28", "2018-03-01", "2018-03-02", "2018-03-05", "2018-03-06", "2018-03-08",
                      "2018-03-09", "2018-03-12", "2018-03-13", "2018-03-14", "2018-03-15", "2018-03-19", "2018-03-20" ,"2018-03-22",
                      "2018-03-24", "2018-03-26", "2018-03-27", "2018-03-28", "2018-03-29" ,"2018-03-30", "2018-04-03", "2018-04-04",
                      "2018-04-05", "2018-04-06", "2018-04-09", "2018-04-10", "2018-04-11" ,"2018-04-12", "2018-04-13", "2018-04-16",
                      "2018-04-17", "2018-04-18", "2018-04-19", "2018-04-20", "2018-04-23" ,"2018-04-24", "2018-04-25" ,"2018-04-26",
                      "2018-04-27", "2018-04-28", "2018-04-29", "2018-04-30", "2018-05-02" ,"2018-05-03", "2018-05-07", "2018-05-09",
                      "2018-05-14", "2018-05-15", "2018-05-16", "2018-05-18", "2018-05-22", "2018-05-23", "2018-05-25", "2018-05-31",
                      "2018-06-04" ,"2018-06-05" ,"2018-06-06" ,"2018-06-08" ,"2018-06-12" ,"2018-06-13" ,"2018-06-14" ,"2018-06-15",
                      "2018-06-16" ,"2018-06-18" ,"2018-06-20" ,"2018-06-21" ,"2018-06-25" ,"2018-06-27" ,"2018-07-02" ,"2018-07-03",
                      "2018-07-05" ,"2018-07-09" ,"2018-07-10", "2018-07-11", "2018-07-13" ,"2018-07-16", "2018-07-19", "2018-07-23"), Value=floor(jitter(100:21,5)))
DT[, Date:=as.Date(Date)]

DT[, weight:=1]
DT[(1+floor(.N*0.6)):(.N), weight:=2]
lm(as.integer(Date) ~ Value, data=DT, weights = weight)
Gruß, Jörg

Regression
Beiträge: 76
Registriert: Mo Jan 15, 2018 9:57 am

Re: Lineare Regression mit Gewichten für ein Datum

Beitrag von Regression » Fr Okt 12, 2018 1:44 pm

TOP :!:
Danke

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast