時間跨度的運算
你可以對 timespan 做加減,來建立不同長度的時間跨度,甚至也能用數字去相乘。舉例來說,若要建立 3 天又 3 小時的 duration,可以寫:
ddays(3) + dhours(3),或 3*ddays(1) + 3*dhours(1),甚至 3*(ddays(1) + dhours(1))。
2017-08-21 18:26:40 北美曾發生日食。透過計算未來一個 Saros 的日期與時間,你可以預測下一次幾何條件相似的食相。Saros 是一段時間長度,等同於 223 個「朔望月(Synodic month)」。朔望月是月相循環的週期,其 duration 為 29 天 12 小時 44 分 3 秒。
就在這個練習中動手做吧!
本練習屬於課程
在 R 中處理日期與時間
練習說明
- 建立一個對應單一朔望月的 duration:29 天、12 小時、44 分、3 秒。
- 將
synodic乘以 223,建立對應一個 Saros 的 duration。 - 將
saros加到eclipse_2017,用來預測下一次食相。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Time of North American Eclipse 2017
eclipse_2017 <- ymd_hms("2017-08-21 18:26:40")
# Duration of 29 days, 12 hours, 44 mins and 3 secs
synodic <- ___
# 223 synodic months
saros <- ___
# Add saros to eclipse_2017