Die Subtraktion von Zwei Spalten Bestehend aus Datum und Zeit in der R
Ich habe ein problem mit Subtraktion in zwei Spalten einer Tabelle bestehend aus Datum und die Uhrzeit in einer einzelnen Zelle.
> TimeData
DEPARTURE_TIME LAB_TIME
1/30/2010 4:18 1/30/2010 0:29
1/30/2010 4:18 1/30/2010 0:29
1/30/2010 6:49 1/30/2010 0:48
1/30/2010 6:49 1/30/2010 0:48
1/30/2010 9:42 1/30/2010 1:29
1/30/2010 9:42 1/30/2010 1:29
1/30/2010 7:25 1/30/2010 1:16
Brauche ich, um zu erhalten die Differenz zwischen Abflug-und Labor-Zeit in Stunden und Minuten.
Muss ich separate Zeit und Datum oder gibt es eine Möglichkeit, subtrahieren Sie die Daten in dieser Weise ?
Ich wirklich zu schätzen jede Hilfe.
- Sind diese Spalten Zeichenfolgen oder Datumsangaben (in R)?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen
TimeData$DEPARTURE_TIME - TimeData$LAB_TIME
?Es hängt davon ab, ob Ihre
xxx_TIME
Spalten sind strings oder ob Sie konvertiert haben, müssen Sie Datum-Zeiten.Nehme an, Sie sind strings (habe Sie gelesen mit
read.csv
oder so ähnlich); dann konvertieren Sie Sie mit zu Datum-Zeit-Objekte, die Sie verwenden könnenas.POSIXct
(siehe?as.POSIXct
undstrptime
):Hinweis: die
format
argument: sieht aus wie das Ihre in Monat/Tag/Jahr Stunden:Minuten(25 Stunden) - format. Sehen?strptime
für weitere Informationen über Datumsformate.Dann um die Differenz zu ermitteln, können Sie entweder:
welche picks die entsprechenden Zeiteinheiten für Sie, ODER geben Sie Stunden, die Sie verwenden können
difftime
(siehe?difftime
):Das resultierende Objekt
diffs
sieht wie folgt aus:Extrahieren nur der numerische Teil, verwenden
as.numeric(diffs)
.Zu konvertieren, das in ein-Stunden-Vektor und einem Minuten vector...naja, 60 Minuten, um eine zweite, usw:
Geben Sie: