ट्रेडिंग डे के आधार पर missing वैल्यू भरें
पिछले अभ्यास में, पिछले दिन के अंतिम observation को अगले दिन के पहले observation तक आगे बढ़ाया गया था। इस अभ्यास में आप सीखेंगे कि पिछले दिन की अंतिम वैल्यू का उपयोग किए बिना, ट्रेडिंग डे के आधार पर missing वैल्यू कैसे भरें।
आप Introduction to xts and zoo कोर्स में सीखे गए उसी split-lapply-rbind पैटर्न का उपयोग करेंगे। संदर्भ के लिए, पैटर्न नीचे दिया है।
x_split <- split(x, f = "months")
x_list <- lapply(x_split, cummax)
x_list_rbind <- do.call(rbind, x_list)
याद रखें कि do.call(rbind, ...) सिन्टैक्स आपको rbind() को ऑब्जेक्ट्स की एक लिस्ट पास करने देता है, ताकि आपको उनके सभी नाम टाइप न करने पड़ें।
आपके वर्कस्पेस में trade_day ऑब्जेक्ट मौजूद है, जिसमें पिछले अभ्यास से regular series है, लेकिन उसमें कोई NA भरा नहीं गया है।
यह अभ्यास पाठ्यक्रम का हिस्सा है
R में वित्तीय डेटा का इम्पोर्ट और प्रबंधन
अभ्यास निर्देश
split()का उपयोग करकेtrade_dayडेटा को हर दिन के लिए डेटा की एक लिस्ट में रखकरdaily_listऑब्जेक्ट बनाएँ।- अब
lapply()का उपयोग करकेdaily_listकी प्रत्येक दिन की लिस्ट मेंNAवैल्यू भरें। - अंत में,
do.call()औरrbind()का उपयोग करdaily_filledको एक सिंगल xts ऑब्जेक्ट में बदलें जिसका नामfilled_by_trade_dayहो।
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Split trade_day into days
daily_list <- split(___ , f = "___")
# Use lapply to call na.locf for each day in daily_list
daily_filled <- lapply(___, FUN = ___)
# Use do.call to rbind the results
filled_by_trade_day <- do.call(rbind, ___)