VBAで総当たりで相関を出したいです。
昨日以降(0) 2日前以降(0) 3日前以降(0) 4日前以降(0) 5日前以降(0)
Message#1 2014年12月17日(水)07時29分 From: VBA迷い人 | 返事 削除 変更 |
VBAで総当たりで相関を出したいです。 correl関数を用いようと思うのですが、一部、対応するデータ数が少ないためか、エラーが出てしまいます。 (x,yそれぞれは十分数あるが、x(n)に対応するy(n)が少ない) On Error Goto でも解決できません。 1004:「アプリケーション定義またはオブジェクト定義のエラーです。」 と出ますが、そこまでの他の計算結果もでているのでよくわかりません。 何か分かる方いらっしゃるでしょうか。 宜しくお願い致します。 経時変化から各データ同士の相関を見ようとしています。 For x = 2 To xmax For y = 2 To ymax On Error GoTo myError4 Cells(1, 1) = "b" If x < y Then GoTo 1000 With Worksheets("(シート)") Set ds1(x) = .Range(.Cells(2, x), .Cells(ymax, x)) Set ds2(y) = .Range(.Cells(2, y), .Cells(ymax, y)) End With Cells(1, 1) = "a" Cells(3, 5) = x Cells(3, 6) = y corr = Application.WorksheetFunction.Correl(ds1(x), ds2(y)) Cells(1, 1) = "c" corr = corr * corr Cells(x, y) = corr If corr > 0.9 Then n = n + 1 Cells(2, 4) = n On Error GoTo 0 myError4: Cells(1, 1) = "e" Next 1000 Next (1,1)にaと表記された状態で止まってしまいます。 |
昨日以降 2日前以降 3日前以降 4日前以降 5日前以降