2013-02-12 1 views
0

나는 바지 알고리즘을 만들려고합니다. 이것에 대한 전체 시간 시리즈에서 임의의 블록을 그릴 필요가 있습니다. 나는 임의의 블록을 그립니다 포함하는 인덱스 벡터를 만들었지 만 난 내 동물원 시계열에 적용 할 때, 나는동물원 timeseries 개체에서 바꿀 샘플링

In zoo(rval, index(x)[i]) : 
    some methods for “zoo” objects do not work if the index entries in ‘order.by’ are not unique 

오류가 발생합니다. 샘플링은 대체를 사용하기 때문에 같은 타임 스탬프로 여러 항목을 얻습니다. 나는 어떻게 든 타임 스탬프를 포함하지 않는 매트릭스로 데이터를 변환하려고 시도했지만 실제로는 효과가 없었다. 나도 동물원에서 경고 메시지를받지 못했던 콘솔에서 수동으로 같은 작업을 시도했지만 오류 메시지 나 그와 비슷한 메시지는 표시하지 않으려 고합니다.

이것은 n = 샘플 크기, m = 블록 크기, b = 블록 수 (m * b = n이되도록)의 코드 부분입니다. Ypretest 및 Xpretest는 동물원로 초기화 (그러나 나는 또한 중 하나를 밖으로 작동하지 않았다, 너무 여러 가지 다른 유형의 시도)

if (n%%m == 0) { 
    b <- n/m 

    while(tail(blockvector,n=1)+m < n) { 
    blockvector <- c(blockvector,tail(blockvector,n=1)+m) 
} 

randomvector <- sample(blockvector, b, replace=T)   

for(i in 1:b) { 
    blockindex <- c(blockindex, randomvector[i]:(randomvector[i]+m-1)) 
} 

Ypretest <- Y[blockindex] 
Xpretest <- X[blockindex] 

어떤 제안입니까?

+0

기계 학습 알고리즘에 필요한 벡터 및 동물원 개체의 종류는 무엇입니까? –

+0

1) 경고입니까, 아니면 오류입니까? 2) 콘솔과 다르게 작동한다는 진술은 의미가 없습니다. 정말 무슨 일이야? 3) "매트릭스가 실제로 제대로되지 않았다"는 것은 무엇을 의미합니까? –

+0

@PaulHiemstra : 기계 학습 알고리즘은 기본적으로 벡터/행렬 만 필요하지만 ts 또는 동물원 객체를 처리 할 수 ​​있다면 편리 할 것이라고 생각했습니다. – MichaelJeremias

답변

1

이러한 대체 재 샘플링은 동일한 타임 스탬프를 가진 관측치가 문제를 일으킬 수있는 R의 timeseries 오브젝트와 완전히 호환되지 않습니다. 당신의 기계 학습 알고리즘이 벡터와 행렬을 작동 시킨다면, 나는 그것들을 사용할 것입니다. 동물원 객체를 모두 삭제하거나 bagging하기 직전에 변환 할 수 있습니다.