2016-02-04 60 views
0

我有以下時間序列:更改時間序列的缺失值的繪圖

Lines <- "Hour,PF 
    0,14/01/2015 00:00,0.305 
    1,14/01/2015 01:00,0.306 
    2,14/01/2015 02:00,0.307 
    3,14/01/2015 03:00,0.3081 
    4,14/01/2015 04:00,0.3091 
    5,14/01/2015 05:00,0.3101 
    6,14/01/2015 06:00,0.3111 
    7,14/01/2015 07:00,0.3122 
    8,14/01/2015 08:00,0.455 
    9,14/01/2015 09:00,0.7103 
    10,14/01/2015 10:00,0.9656 
    11,14/01/2015 11:00,1   
    12,15/01/2015 12:00,0.9738  
    13,15/01/2015 13:00,0.9476 
    14,15/01/2015 14:00,0.9213 
    15,15/01/2015 15:00,0.8951 
    16,15/01/2015 16:00,0.8689 
    17,15/01/2015 17:00,0.8427 
    18,15/01/2015 18:00,0.6956 
    19,15/01/2015 19:00,0.6006 
    20,15/01/2015 20:00,0.5056 
    21,15/01/2015 21:00,0.4106 
    22,15/01/2015 22:00,0.3157 
    23,15/01/2015 23:00,0.3157" 

library (zoo) 
library (strucchange) 

z <- read.zoo(text = Lines, tz = "", format = "%d/%m/%Y %H:%M", sep = ",") 

如可以看到有24小時的觀察12之間〜13 當我繪製時間序列的間隙:

plot(z) 

我得到了差距圖中的常量值。 我想將缺失值之間的繪圖線改爲0。我該怎麼做?

回答

1

可以設置爲0的空白的範圍是這樣的:

istart <- index(z[diff(index(z))>1]) 
iend <- index(z[ which(diff(index(z))>1) +1 ]) 
z[istart+3600] <- rep(0, times=length(istart)) 
z[iend-3600] <- rep(0, times=length(iend)) 
相關問題