2016-09-22 4 views
0

변경 점 패키지의 cpt.var을 사용하여 변경 점 분석 결과를 플롯하면 x 축의 결과 값은 다음 값 대신 0부터 시작하는 정수입니다 내 데이터 프레임 (년과 주를 합친 정수). 방금 데이터 프레임에서 데이터를 플롯 할 때 x 축이 올바르지 만 cpt.var x 값의 결과가 플롯 될 때plot cpt.var : 축에 대한 데이터 프레임의 값 사용

나는 온라인으로 답변을 검색했지만 해결책을 찾을 수 없습니다. 누군가가 나를 도울 수 있기를 바랍니다.

구문은 아래의 예보다 더 복잡하지만, 동일한 문제에 귀착 : X 축에 plot(df, type="l") 복귀 정확한 값을 사용 dataframe을 플로팅 plot(vvalue)을 수행하여 Changepoint는 분석 결과를 플롯 아니. 솔루션에 대한

library(changepoint) 
df <- read.table(header=TRUE,text = 
        "YEAR_WEEK N 
200801 12 
200802 5 
200803 0 
200804 6 
200805 0 
200806 0 
200807 4 
200808 5 
200809 3 
200810 25 
200811 36 
200812 5 
200813 2 

     ") 

vvalue <- cpt.var(df$N, method = "PELT", penalty = "BIC") 
plot(vvalue) 

답변

1
plot(vvalue, xaxt = "n") 
axis(1, at=1:13, labels=df[,1]) 
+0

감사합니다. 이것은 '고정 된'틱에 적용되지만 축 (1, at = df $ YEAR_WEEK, labels = df $ YEAR_WEEK)과 같은 일반적인 접근 방식을 시도하면 플롯에 값이 전혀 반환되지 않습니다. 이것에 대한 해결책이 있습니까? –

+2

더 일반적인 해결책은 다음과 같습니다.'plot (vvalue, xaxt = "n"); 축 = (1, 길이 = (df $ YEAR_WEEK), 레이블 = df $ YEAR_WEEK) –

+0

마지막 질문 하나 : at = seq를 사용하여 x 축의 눈금 수를 조정하면 (1, 길이 (df ​​$ YEAR_WEEK), by = 25) (명백한) 오류가 발생합니다. 'at'및 'labels'길이가 다릅니다. 어떻게 해결할 수 있을까요? –