2011-02-24 6 views
5

나는 약간의 간격이있는 시간 데이터를 그려보고자한다. 여기 플롯을 볼 수 있습니다 : http://www.tiikoni.com/tis/view/?id=da222e2.
문제는 TS의 시간 간격 동안 선 긋기가 간격을 통해 보간되고이를 원하지 않는다는 것입니다. 나는 NA 플래그를 사용하여 갭을 인터리빙하려고 시도했지만, 10000 개의 데이터 포인트가 여러 파일에서 정렬되어 NA 플래그를 수동으로 추가하기가 어렵습니다. 플롯의 동작을 정의 할 수 없다면 (예 : 동물원과 같이 다른 플롯을 사용할 수 있습니까?)임시 TS 플로팅 및 NA 데이터 생략

+2

몇 가지 예제 코드는 당신이 바로 요리스있어 –

+0

... 유용 할 것이다. 내가 그것을 포함하지 않은 이유는 내가 놓친 플로팅 함수에서 매개 변수가 될 수 있다고 생각했기 때문입니다. – cmdel

답변

3

틈을 삽입하기가 어렵지 않습니다. NA는 당신이 당신의 시계열의 순서를 알면, 병합 사용하여 약간의 데모를 :..

X <- c(1:20,41:100) 
Y <- rnorm(80) 

plot(X,Y,type="l")  

Z <- seq(min(X),max(X),by=1) # I take 1 is the period. 
newData <- merge(data.frame(X,Y),data.frame(X=Z),all=T) 
plot(newData,type="l") 
2

는 갭 동물원 시리즈 다음에 z의 시점을 더한 누락 된 점을 포함 g 정의를 만듭니다. z 및 플롯과 병합 할 0 폭의 동물원 시리즈

library(zoo) 
z <- zoo(rnorm(12), c(1:6, 11:16)) # test data 

g <- seq(start(z), end(z), 1) 
zz <- merge(z, zoo(, g)) 
plot(zz) 
1

내 쿼리에 도움을 주신 모든 분들께 감사드립니다.

또한이 질문을 R-help 메일 목록에 게시했으며 누락 된 데이터 요소를 NA 플래그로 채우는 절차에 대한 답변을 얻었습니다. 문제는 타임 스탬프가 불규칙적으로 간격을두고 있지만 여전히 특정 임계 값 내에 있다는 것입니다. 당신이 간격을 정의 어떻게 : 어떤 소프트웨어를 사용하면 한 같은 문제가있는 것입니다

: 후세의 목적

이 던컨 머독에 의해 제안은? 정의가 "time difference between X"와 같이 단순하다면, diff() 을 사용하여 정렬 시간의 모든 시간 차이를 찾고, 이 X를 초과 할 때마다 새 데이터를 삽입하십시오. NA 값을 갖는 점. 예를 들어 :

t <- c(1,2,3,7,8,9,11,12,13) 
x <- rnorm(length(T)) 
d <- diff(t) 
gap <- which(d > 1.5) 
if (length(gap)) { 
    newT <- (t[gap] + t[gap+1])/2 
    t <- c(t, newT) 
    x <- c(x, rep(NA, length(newT))) 
    o <- order(t) 
    t <- t[o] 
    x <- x[o] 
} 
plot(t, x, type='l')