time-stamp variable mit lubridate erzeugen
-
- Beiträge: 12
- Registriert: Mo Jun 08, 2020 10:35 am
time-stamp variable mit lubridate erzeugen
Hallo zusammen,
da ich noch relativ neu bin, vermutlich eine etwas einfachere Frage. Ich verwende das Package "lubridate" wohl nicht ganz richtig.
Ich habe 7 Spalten, davon sind die ersten 6 Spalten Jahr, Monat, Tag, Stunde, Minute, Sekunde. Die 7 Spalte ist der Preis.
wie kann ich eine neue Spalte bekommen wo ich eine time-stamp Variable des datums habe, damit ich eine Regression zum Preis machen kann?
ich habe schon so angefangen, nur erscheint keine neue Spalte und es werden auch nicht das Datum von 21.Februar 2020 bis 23. April 2016 durchgegangen.
ymd_hms("2020-2-21 3:4:47, 2016-4-23 1:0:0")
Danke für eure Hilfe.
Beste Grüße
da ich noch relativ neu bin, vermutlich eine etwas einfachere Frage. Ich verwende das Package "lubridate" wohl nicht ganz richtig.
Ich habe 7 Spalten, davon sind die ersten 6 Spalten Jahr, Monat, Tag, Stunde, Minute, Sekunde. Die 7 Spalte ist der Preis.
wie kann ich eine neue Spalte bekommen wo ich eine time-stamp Variable des datums habe, damit ich eine Regression zum Preis machen kann?
ich habe schon so angefangen, nur erscheint keine neue Spalte und es werden auch nicht das Datum von 21.Februar 2020 bis 23. April 2016 durchgegangen.
ymd_hms("2020-2-21 3:4:47, 2016-4-23 1:0:0")
Danke für eure Hilfe.
Beste Grüße
Re: time-stamp variable mit lubridate erzeugen
Hallo Niklas,
willkommen im Forum!
Ich sehe jetzt noch nicht die 7 Spalten Deines Dataframes.
Kannst Du bitte den Output von
in Deine nächste Nachricht kopieren?
Gruß, Jörg
willkommen im Forum!
Ich sehe jetzt noch nicht die 7 Spalten Deines Dataframes.
Kannst Du bitte den Output von
Code: Alles auswählen
str(DeinDataframe)
Gruß, Jörg
-
- Beiträge: 12
- Registriert: Mo Jun 08, 2020 10:35 am
Re: time-stamp variable mit lubridate erzeugen
hallo Jörg, ja gerne.
Code: Alles auswählen
Classes ‘data.table’ and 'data.frame': 2525 obs. of 8 variables:
$ product_id: int 71848 71848 71848 71848 71848 71848 71848 71848 71848 71848 ...
$ year : int 2020 2020 2020 2020 2020 2020 2020 2020 2020 2020 ...
$ month : int 3 3 3 3 3 3 3 3 3 3 ...
$ day : int 21 20 19 18 17 16 15 14 13 12 ...
$ hour : int 3 3 3 3 3 4 3 3 3 3 ...
$ minute : int 4 4 18 6 4 38 4 5 6 5 ...
$ second : int 47 55 38 11 21 44 57 7 0 12 ...
$ price : int 3512 3543 3514 3506 3516 3500 3515 3505 3530 3513 ...
- attr(*, ".internal.selfref")=<externalptr>
Zuletzt geändert von jogo am Mo Jun 08, 2020 12:24 pm, insgesamt 1-mal geändert.
Grund: Formatierung verbessert. http://forum.r-statistik.de/viewtopic.php?f=20&t=29
Grund: Formatierung verbessert. http://forum.r-statistik.de/viewtopic.php?f=20&t=29
Re: time-stamp variable mit lubridate erzeugen
Hallo Niklas,
(wahrscheinlich ist es mit sprintf() hübscher)
Gruß, Jörg
Code: Alles auswählen
DeinDataframe$TagZeit <- with(DeinDataframe, paste0(year, "-", month, "-", day, " ", hour, ":", minute, ":", second))
Code: Alles auswählen
DeinDataframe$TagZeit <- with(DeinDataframe, sprintf("%d-%d-%d %d:%d:%d", year, month, day, hour, minute, second))
-
- Beiträge: 12
- Registriert: Mo Jun 08, 2020 10:35 am
Re: time-stamp variable mit lubridate erzeugen
Hallo Jörg,
ja super der zweite Befehl funktioniert genau.
Beim Durchführen der Regression ist der Output nur mit NA bestückt. Nur der Intercept hat Werte
ja super der zweite Befehl funktioniert genau.
Beim Durchführen der Regression ist der Output nur mit NA bestückt. Nur der Intercept hat Werte
Code: Alles auswählen
reg1 <- lm(price ~ TagZeit, data=data)
summary(reg1)
Zuletzt geändert von jogo am Mo Jun 08, 2020 12:48 pm, insgesamt 1-mal geändert.
Grund: Formatierung verbessert. http://forum.r-statistik.de/viewtopic.php?f=20&t=29
Grund: Formatierung verbessert. http://forum.r-statistik.de/viewtopic.php?f=20&t=29
Re: time-stamp variable mit lubridate erzeugen
Hallo Niklas,
Gruß, Jörg
schön. Beim ersten hatte ich mich vertippt: ein Punkt statt einem Komma.
Die unabhängige Variable $TagZeit ist ein character - damit lässt sich sehr schlecht eine Regression rechnen. Du könntest jetzt aber mit einer Funktion aus lubridate diese Zeichenketten in ein ordentliches Datum umwandeln ...Beim Durchführen der Regression ist der Output nur mit NA bestückt. Nur der Intercept hat Werte
Code: Alles auswählen
reg1 <- lm(price ~ TagZeit, data=data) summary(reg1)
Gruß, Jörg
-
- Beiträge: 12
- Registriert: Mo Jun 08, 2020 10:35 am
Re: time-stamp variable mit lubridate erzeugen
ja das ist eine gute Idee.
ist das zu einfach gedacht?
Code: Alles auswählen
Datum <- ymd_hms(TagZeit)
Zuletzt geändert von jogo am Mo Jun 08, 2020 1:14 pm, insgesamt 1-mal geändert.
Grund: Formatierung verbessert. http://forum.r-statistik.de/viewtopic.php?f=20&t=29
Grund: Formatierung verbessert. http://forum.r-statistik.de/viewtopic.php?f=20&t=29
Re: time-stamp variable mit lubridate erzeugen
Hallo Niklas,
oder gleich
Gruß, Jörg
p.s.:
Bitte lies viewtopic.php?f=20&t=29
nein, nur musst Du noch die Stuktur Deiner Daten berücksichtigen.niklas1993 hat geschrieben: Mo Jun 08, 2020 1:02 pm ja das ist eine gute Idee.
ist das zu einfach gedacht?Code: Alles auswählen
Datum <- ymd_hms(TagZeit)
Code: Alles auswählen
data$TuZ <- ymd_hms(data$TagZeit)
reg1 <- lm(price ~ TuZ, data=data)
summary(reg1)
Code: Alles auswählen
summary(lm(price ~ ymd_hms(TagZeit), data=data))
p.s.:
Bitte lies viewtopic.php?f=20&t=29
-
- Beiträge: 12
- Registriert: Mo Jun 08, 2020 10:35 am
Re: time-stamp variable mit lubridate erzeugen
klasse das funktioniert so, danke.
-
- Beiträge: 12
- Registriert: Mo Jun 08, 2020 10:35 am
Re: time-stamp variable mit lubridate erzeugen
hallo ich habe nochmal eine weitere frage:
und zwar gibt es eine Funktion wo ich den genauen Wochentag ausgeben kann: also ich habe ja im ganzen Datensatz in der TuZ Spalte ein exaktes Datum. Nun möchte ich wissen welcher Wochentag das ist und in einer neuen Spalte ausgeben.
Vielen Dank und viele Grüße
und zwar gibt es eine Funktion wo ich den genauen Wochentag ausgeben kann: also ich habe ja im ganzen Datensatz in der TuZ Spalte ein exaktes Datum. Nun möchte ich wissen welcher Wochentag das ist und in einer neuen Spalte ausgeben.
Vielen Dank und viele Grüße