में अंतिम एन आइटम का चयन करना मैं एक समय श्रृंखला के अंतिम n
आइटम चुनना चाहता हूं। मैं [
ऑपरेटर का उपयोग कर सकते हैं, लेकिन मैं डेटा की समय श्रृंखला गुण खो:एक समय श्रृंखला
data <- ts(1:10, frequency = 4, start = c(1959, 2))
data[(length(data)-4):length(data)]
मैं करने के लिए समय श्रृंखला का श्रेय फिर से लागू करने के लिए एक आवरण समारोह में लिखा है, लेकिन अगर वहाँ था एक और अधिक मैं सोच रहा था ऐसा करने के लिए सुरुचिपूर्ण तरीका?
lastN <- function(data,n) {
out <- data[(length(data)-n+1):length(data)]
ts(out, end=end(data), frequency=frequency(data))
}
data
lastN(data,5)
[
ऑपरेटर एक समय श्रृंखला वस्तु क्यों नहीं लौटाता है?
या बस 'पूंछ (data_zoo, 5) 'का उपयोग करें। –
यह अभी के लिए काम करता है। मैं सीधे 'ts' ऑब्जेक्ट्स को इंडेक्स करने में सक्षम होना पसंद करूंगा, लेकिन चिड़ियाघर से/में कनवर्ट करने से बस 2 अतिरिक्त कदम जोड़े जाते हैं, और यह आसानी से उपयोग के दृष्टिकोण से लायक लगता है। – Zach
@ यहोशूउलिच के महान सुझाव के साथ यह बहुत साफ हो जाता है, और एक एक लाइनर पठनीय हो सकता है। 'lastN <-tail (as.zoo (डेटा), एन)' –