เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การลบวันที่

เช่นเดียวกับตัวเลข การคำนวณทางคณิตศาสตร์สามารถทำได้กับวันที่เช่นกัน โดยเฉพาะอย่างยิ่ง สามารถหาผลต่างระหว่างวันที่สองวัน (เป็นจำนวนวัน) ได้ด้วยการลบ:

today <- as.Date("2017-01-02")
tomorrow <- as.Date("2017-01-03")
one_year_away <- as.Date("2018-01-02")

tomorrow - today
Time difference of 1 days

one_year_away - today
Time difference of 365 days

หรืออีกทางหนึ่ง สามารถใช้ฟังก์ชัน difftime() เพื่อหาช่วงเวลาได้เช่นกัน

difftime(tomorrow, today)
Time difference of 1 days

# With some extra options!
difftime(tomorrow, today, units = "secs")
Time difference of 86400 secs

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

R ระดับกลางสำหรับการเงิน

ดูคอร์ส

คำแนะนำการฝึกหัด

  • เตรียม vector ชื่อ dates ไว้ให้แล้ว
  • ใช้การลบเพื่อยืนยันว่าวันที่ 1 มกราคม 1970 คือวันแรกที่ R เริ่มนับ โดยสร้างตัวแปรชื่อ origin ที่มีค่าเป็น "1970-01-01" ในรูปแบบวันที่
  • จากนั้น ใช้ as.numeric() กับ dates เพื่อดูว่าผ่านมากี่วันนับจากวันที่ 1 มกราคม 1970
  • สุดท้าย ลบ origin ออกจาก dates เพื่อยืนยันผลลัพธ์ (สังเกตการทำงานแบบ recycling ที่เกิดขึ้นด้วย!)

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Dates
dates <- as.Date(c("2017-01-01", "2017-01-02", "2017-01-03"))

# Create the origin
origin <- ___

# Use as.numeric() on dates
___

# Find the difference between dates and origin
___
แก้ไขและรันโค้ด