Căn chỉnh chuỗi về ngày đầu và cuối tháng
Đôi khi bạn không thể dùng các lớp tiện dụng như yearmon để biểu diễn dấu thời gian. Bài tập này sẽ hướng dẫn bạn cách căn chỉnh thủ công dữ liệu đã gộp theo kiểu biểu diễn dấu thời gian mà bạn muốn.
Trước tiên, bạn gộp dữ liệu tần suất thấp với dữ liệu đã tổng hợp, rồi dùng na.locf() để điền giá trị NA theo hướng tiến (hoặc lùi, với fromLast = TRUE). Sau đó, bạn có thể lấy phần tử con của kết quả bằng chỉ mục của đối tượng có kiểu biểu diễn bạn ưa thích.
Môi trường làm việc của bạn có FEDFUNDS, monthly_fedfunds (kết quả của apply.monthly(DFF, mean)), và merged_fedfunds (kết quả của merge(FEDFUNDS, monthly_fedfunds) trong đó chỉ mục của monthly_fedfunds là Date). Lưu ý các giá trị NA trong merged_fedfunds.
Bài tập này là một phần của khóa học
Nhập và quản lý dữ liệu tài chính trong R
Hướng dẫn bài tập
- Dùng
na.locf()để điền các giá trịNAtrongmerged_fedfunds. Gán kết quả vàomerged_fedfunds_locf. - Lấy phần tử con của
merged_fedfunds_locftheoindex(monthly_fedfunds)để tạo một đối tượng xts với dấu thời gian tại cuối tháng. Đặt tên kết quả làaligned_last_day. - Dùng đối số
fromLastcủana.locf()để điền các giá trịNAbằng quan sát kế tiếp. Gán kết quả vàomerged_fedfunds_locb. - Lấy phần tử con của
merged_fedfunds_locbtheoindex(FEDFUNDS)để tạo một đối tượng xts với dấu thời gian vào ngày mùng 1 của tháng. Đặt tên kết quả làaligned_first_day.
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.
# Fill NA forward
merged_fedfunds_locf <- ___(___)
# Extract index values containing last day of month
aligned_last_day <- merged_fedfunds_locf[___]
# Fill NA backward
merged_fedfunds_locb <- na.locf(___, fromLast = ___)
# Extract index values containing first day of month
aligned_first_day <- merged_fedfunds_locb[___]