चिड़ियाघर पैकेज rollmean
में और rollapply
तर्क है कि कई रूपों की अनुमति देने के लिए है।
library(zoo)
x <- seq(10)^2
# no NAs at end
rollmean(x, 3)
# NAs at ends
rollmean(x, 3, na.pad = TRUE)
# weighted mean
rollapply(zoo(x), 3, function(x) c(1, 2, 1) %*% x/4)
# at ends take means of less than 3 points - needs devel version
# partial= is in development and at this point must use na.rm = TRUE to use partial
source("http://r-forge.r-project.org/scm/viewvc.php/*checkout*/pkg/zoo/R/rollapply.R?revision=802&root=zoo")
rollapply(zoo(x), 3, mean, partial = TRUE, na.rm = TRUE)
संपादित करें:
ध्यान दें कि इस के बाद लिखा गया था चिड़ियाघर के विकास के संस्करण लिख partial = TRUE
एक नियम लिखते हैं = "आंशिक" या rule = 3
के इतने बदल गया था कि बजाय। समस्या यह थी कि विकास के संस्करण में नए अंत नियम जोड़े गए थे (अब 3 और 4 वें रिलीज होने से पहले जोड़े जाएंगे) प्रत्येक उपयोगकर्ता को इंटरफ़ेस के लिए एक अलग तर्क के लिए अलग तर्क है। इसके अलावा rule
आर के मूल में approx
के साथ अधिक संगत है। वास्तव में rule=1
और rule=2
का अर्थ rollapply
और approx
(आर के मूल से) में समान स्थिरता और उपयोग में आसानी के लिए समान अर्थ होगा। नीचे दिए गए उदाहरण में mean
के आसपास कोष्ठक वर्तमान में rollmean
पर कॉल करने से रोकने के लिए विकास संस्करण में आवश्यक हैं, जहां rule="partial"
अभी तक कार्यान्वित नहीं किया गया है, लेकिन इसे करने की आवश्यकता को आधिकारिक रूप से जारी किए जाने तक समाप्त कर दिया जाएगा।
source("http://r-forge.r-project.org/scm/viewvc.php/*checkout*/pkg/zoo/R/rollapply.R?revision=815&root=zoo")
rollapply(zoo(x), 3, (mean), rule = "partial")
स्रोत
2010-12-12 14:29:21
लेकिन रोलमेन का उत्पादन हमेशा इनपुट से एक तत्व छोटा क्यों होता है? – rsk82