2017-03-01 95 views
0

我已经通过从RasterBrick提取时间序列中创建一个对象动物园删除间隙:时间序列图中R:从积[动物园]

library(zoo) 
s <- RasterBrick 

target_cell <- 23265 

ss <- zooExtract(s, target_cell) 

windows() 
plot.zoo(ss, type = "o") 

我的结果如下所示。我想要一条线贯穿所有的要点,但我似乎无法使它工作,我已经通过以前的回答查看了这个问题。我试过lines(),它给出了相同的结果。

+0

看起来你有NA在您的数据值,但不能没有一个重复的例子, –

+0

多说是的,我有很多数据缺口和不规则的时间序列,这是问题吗? – dtanon

+1

这些应该工作'ss_filled = zoo :: na.locf(ss); plot.zoo(ss_filled,type =“o”)'或'ss_complete_cases = ss [complete.cases(ss),]; plot.zoo(ss_complete_cases,type =“o”)''但是也会建议保存失踪日期数据 – OdeToMyFiddle

回答

1

由于@Richard德福建议在情节的差距是由于数据缺失。 随着基函数complete.caseszoona.locf差距 可以去除或填充以前的意见如下:

#to identity periods with missing data 

missingPeriod = as.Date(index(ss[!complete.cases(ss),])) 


#to retain only periods with no missing data 
ssComplete = ss[complete.cases(ss),] 


#to retain all periods with gaps filled with previous value 
#maxgap parameter controls number of missing data replaced with prev observation 
N = 5 
ssFilled = zoo::na.locf(ss,maxgap=N); 

#plots 
plot.zoo(ssComplete , type = "o") 

plot.zoo(ssFilled, type = "o") 
相关问题