Bắt đầu ngayBắt đầu miễn phí

Chỉ định thứ tự với `parse_date_time()`

Nếu bạn gặp một thứ tự rất lạ như dym_msh thì sao? Không có hàm đặt tên sẵn cho đúng thứ tự đó, và đây chính là lúc parse_date_time() phát huy tác dụng. parse_date_time() nhận thêm đối số orders, nơi bạn có thể chỉ định thứ tự của các thành phần trong ngày tháng.

Ví dụ, để parse "2010 September 20th" bạn có thể dùng parse_date_time("2010 September 20th", orders = "ymd"), tương đương với việc dùng hàm ymd() ở bài trước.

Một ưu điểm của parse_date_time() là bạn có thể dùng nhiều ký tự định dạng hơn. Ví dụ, bạn có thể chỉ định tên thứ trong tuần với A, I cho giờ 12 giờ, chỉ báo am/pm với p, và còn nhiều ký tự khác. Bạn có thể xem toàn bộ danh sách trên trang trợ giúp ?parse_date_time.

Một ưu điểm lớn khác là bạn có thể chỉ định một vector các thứ tự, cho phép parse các ngày tháng khi có thể dùng nhiều định dạng khác nhau.

Bạn sẽ thực hành trong bài tập này.

Bài tập này là một phần của khóa học

Làm việc với Ngày và Giờ trong R

Xem khóa học

Hướng dẫn bài tập

  • x là một datetime khó hơn. Dựa vào các gợi ý trong phần hướng dẫn để parse x.
  • two_orders có hai thứ tự khác nhau, hãy parse cả hai bằng cách chỉ định orders = c("mdy", "dmy").
  • Parse short_dates với orders = c("dOmY", "OmY", "Y"). Điều gì xảy ra với các ngày không có tháng hoặc ngày được chỉ định?

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Specify an order string to parse x
x <- "Monday June 1st 2010 at 4pm"
___(x, orders = "___")

# Specify order to include both "mdy" and "dmy"
two_orders <- c("October 7, 2001", "October 13, 2002", "April 13, 2003", 
  "17 April 2005", "23 April 2017")
parse_date_time(two_orders, orders = ___)

# Specify order to include "dOmY", "OmY" and "Y"
short_dates <- c("11 December 1282", "May 1372", "1253")
parse_date_time(short_dates, orders = ___)
Chỉnh sửa và Chạy Mã