Tạo và định dạng thời gian
Tương tự như làm việc với ngày, bạn có thể dùng as.POSIXct() để chuyển từ chuỗi ký tự sang đối tượng POSIXct, và dùng format() để chuyển từ đối tượng POSIXct sang chuỗi ký tự. Một lần nữa, bạn có nhiều ký hiệu để sử dụng:
%H: giờ dạng số thập phân (00-23)%I: giờ dạng số thập phân (01-12)%M: phút dạng số thập phân%S: giây dạng số thập phân%T: viết tắt cho định dạng điển hình%H:%M:%S%p: chỉ báo AM/PM
Để xem đầy đủ danh sách ký hiệu chuyển đổi, hãy xem tài liệu strptime trong console:
?strptime
Tương tự, as.POSIXct() dùng một định dạng mặc định để khớp với chuỗi ký tự. Trong trường hợp này là %Y-%m-%d %H:%M:%S. Trong bài tập này, ta bỏ qua khác biệt múi giờ.
Bài tập này là một phần của khóa học
R nâng cao
Hướng dẫn bài tập
- Chuyển hai chuỗi biểu diễn mốc thời gian,
str1vàstr2, thành các đối tượngPOSIXcttên làtime1vàtime2. - Dùng
format()để tạo một chuỗi từtime1chỉ chứa phút. - Từ
time2, trích xuất giờ và phút theo dạng "giờ:phút AM/PM". Hãy tham chiếu phần mô tả bài tập ở trên để tìm các ký hiệu chuyển đổi phù hợp!
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.
# Definition of character strings representing times
str1 <- "May 23, '96 hours:23 minutes:01 seconds:45"
str2 <- "2012-3-12 14:23:08"
# Convert the strings to POSIXct objects: time1, time2
time1 <- as.POSIXct(str1, format = "%B %d, '%y hours:%H minutes:%M seconds:%S")
# Convert times to formatted strings