Симулирах (нормално разпределени) произволни данни за всеки ден за период от януари-1-2014 до януари-1-2016. След това се опитах да взема сумите от тези данни на редовни периоди от 8 дни. Ето моят код (добавих семена за възпроизводимост):
library(xts)
library(ggplot2)
set.seed(123)
#simulate data
property_damages_in_dollars <- rnorm(731,100,10)
date_decision_made = seq(as.Date("2014/1/1"), as.Date("2016/1/1"),by="day")
date_decision_made <- format(as.Date(date_decision_made), "%Y/%m/%d")
final_data <- data.frame(date_decision_made, property_damages_in_dollars)
#convert to xts object
dat <- xts(final_data$property_damages_in_dollars,
as.Date(final_data$date_decision_made, '%Y/%m/%d'))
#aggregate by 8 day period
ep <- endpoints(dat,'days',k=8)
#final aggregated file
a = period.apply(x=dat,ep,FUN=sum )
#plot
a_df <- fortify(a)
ggplot(a_df, aes(x = Index, y = a)) + geom_line()
Изглежда обаче, че има значителни неравномерни пикове, когато данните са сумирани на периоди от 8 дни, което предполага, че може да има някои грешки при сумирането на данните:
Към края на графиката изглежда, че има спад към края. Това изглежда подозрително - но донякъде разбираемо.
В средата на графиката има много забележим рязък спад - това наистина изглежда като грешка в изчислението. Този спад се случва, когато годината преминава от 2015 (декември) към 2016, съответните (обобщени) числа, свързани с това време, също изглеждат ниски.
Може ли някой да обясни тези капки и да предложи как могат да бъдат коригирани? Благодаря
xts
- можете ли да принудитеendpoints
да игнорира края на годината? - person Hobo   schedule 06.12.2020endpoints
. Може да можете да използватеseq
вместо това - вижте моя отговор - person Hobo   schedule 06.12.2020