두 데이터 집합이 있고이 두 데이터 집합에서 계열의 상관 관계를 추정해야합니다. 예를 들어 길이가 189 인 시리즈와 다른 시리즈는 길이가 192입니다.이 시리즈의 종점은 동일한 기간 (즉, 2015 년 12 월)에 응답합니다.이 시리즈의 시작점에 차이가 있습니다. 마지막 지점부터 시작하여 두 시리즈의 12 데이터 블록 블록에 대한 상관 관계를 추정해야합니다. 예를 들어 첫 번째 블록은 2015 년 1 월부터 2015 년 12 월까지, 두 번째 블록은 2014 년 1 월에서 2014 년 12 월까지입니다. 마지막 블록의 데이터 길이가 동일하지 않으므로 데이터 길이를 균등하게 유지할 수 있고 마지막 블록의 크기를 줄일 수 있습니다 12 개월 이상. 예를 들어, 마지막 블록의 길이는 9 개월입니다. 루프를 생성하고 실행하는 방법? 나는 다음을 시도했다. 이것은 저에게 결과를 주지만 모든 루프 실행에 대해 동일한 상관 관계 값을 얻고 있습니다. 어디서 잘못 될지 모르겠다.2 개의 시계열에서 동일하지 않은 크기의 데이터 블록 간의 상관 관계 실행
correl=data.frame(x=numeric(0))
r=nrow(US)
s=nrow(Argentina)
a=ifelse(r<s,r,s)
for (i in 1:(a%/%12)) {
if(i<a%/%12){
elmnt1= US[r-11:r,]$IIP
elmnt2= Argentina[s-11:s,]$IIP
} else {
elmnt1= US[1:r%%12,]$IIP
elmnt2=Argentina[1:s%%12,]$IIP
}
corr=cor(elmnt1, elmnt2)
correl$x[i,]=corr
r=r-12
s=s-12
}
재현 가능한 예를 제공해주십시오. 미국과 아르헨티나 데이터 프레임을 공유하십시오. – www