私はスタックオーバーフローのコミュニティに不慣れで、これが最初の質問です。私が何か間違ったことをしたかどうか教えてください。
これが私の問題の状況です。私はオーストラリアの電力価格を扱っており、時系列は次のようになります。これは、30 分ごとにサンプリングされる高頻度データです。
> head(t)
VIC NSW QLD SNOWY SA
1999-01-01 00:00:00 26.84 24.29 26.52 26.20 29.87
1999-01-01 00:30:00 30.52 27.64 19.34 29.74 36.01
1999-01-01 01:00:00 28.74 26.64 17.47 28.34 35.70
1999-01-01 01:30:00 27.94 25.81 17.08 27.43 31.67
1999-01-01 02:00:00 20.90 19.94 15.84 20.86 22.42
1999-01-01 02:30:00 20.26 19.48 15.68 20.28 21.38
> tail(t)
VIC NSW QLD SNOWY SA
2006-12-31 21:00:00 14.59 15.10 13.72 15.35 29.60
2006-12-31 21:30:00 14.77 15.42 14.12 15.61 28.79
2006-12-31 22:00:00 14.12 15.01 13.54 15.06 20.59
2006-12-31 22:30:00 15.15 16.19 15.10 16.21 17.44
2006-12-31 23:00:00 15.17 16.14 15.48 16.18 17.84
2006-12-31 23:30:00 16.96 17.14 16.37 17.63 20.20
> class(t)
[1] "xts" "zoo"
私は、1 日の各時点の平均価格を計算しようとしていました。だから私はこれをしました:
> half.hourly.means <- aggregate(t$VIC, list(format(index(t), "%H:%M")), FUN = mean)
> head(half.hourly.means)
00:00 26.99938
00:30 24.67273
01:00 21.78190
01:30 26.46662
02:00 21.27931
02:30 18.57727
> tail(half.hourly.means)
21:00 27.86881
21:30 26.65468
22:00 23.51793
22:30 25.68527
23:00 23.26385
23:30 30.01726
> class(half.hourly.means)
[1] "zoo"
この結果は、サンプル期間全体の各時点の平均価格です。すべてがうまくいきました。しかし、プロットしようとすると、エラーが発生しました。
> plot(half.hourly.means)
Error in plot.window(...) : need finite 'xlim' values
In addition: Warning messages:
1: In xy.coords(x, y, xlabel, ylabel, log) : NAs introduced by coercion
2: In min(x) : no non-missing arguments to min; returning Inf
3: In max(x) : no non-missing arguments to max; returning -Inf
これを試したところ
> plot(as.numeric(half.hourly.means), type = "l")
(評判悪くて画像載せれなかったです、ごめんなさい)
正しいプロットが得られますが、x 軸の値は無意味です。だから私の質問は、x軸の値が「00:00」、「00:30」、「01:00」、...である上記のグラフを作成するにはどうすればよいですか?
お待ち頂きまして、ありがとうございます!
よろしくお願いします、
魏