Dodawanie i odejmowanie przedziałów czasu od daty/godziny
Przedziały czasu często służą do dodawania lub odejmowania ich od konkretnego momentu w czasie. Na przykład, aby obliczyć datę i godzinę jeden dzień od mar_11 (z poprzednich ćwiczeń), możesz użyć:
mar_11 + days(1)
mar_11 + ddays(1)
Wypróbuj oba polecenia w konsoli – wyniki będą różne! Które z nich jest właściwe? To zależy od tego, co chcesz osiągnąć. Jeśli chcesz uwzględnić fakt, że jednostki czasu – w tym przypadku dni – mogą mieć różną długość (np. z powodu zmiany czasu), użyj okresu days(). Jeśli natomiast chcesz przesunąć czas dokładnie o 86 400 sekund, użyj duracji ddays().
W tym ćwiczeniu będziesz dodawać i odejmować przedziały czasu od dat i wartości daty/godziny.
To ćwiczenie jest częścią kursu
Praca z datami i czasem w R
Instrukcje do ćwiczenia
- Jest poniedziałek 27 sierpnia 2018 roku, godzina 14:00. Chcesz przypomnieć sobie o wysłaniu e-maila za tydzień o tej samej porze. Dodaj okres jednego tygodnia do
mon_2pm. - Jest wtorek 28 sierpnia 2018 roku, godzina 9:00. Uruchamiasz kod, którego wykonanie zwykle zajmuje około 81 godzin. Kiedy się zakończy? Dodaj durację 81 godzin do
tue_9am. - Co robiłeś/-aś pięć lat temu? Odejmij okres 5 lat od
today(). - Odejmij durację 5 lat od
today(). Czy wynik będzie inny?
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Add a period of one week to mon_2pm
mon_2pm <- dmy_hm("27 Aug 2018 14:00")
mon_2pm + ___
# Add a duration of 81 hours to tue_9am
tue_9am <- dmy_hm("28 Aug 2018 9:00")
tue_9am + ___
# Subtract a period of five years from today()
today() - ___
# Subtract a duration of five years from today()
today() - ___