3000株の日の終値を「2000-01-01」から「2014-12-31」に変更しました。彼らはすべて週末を欠場しますが、さらに別の株式は別々の日をランダムに逃します。マトリクスに日付が欠落している複数のtimeseriesをマージして
stock_1 = {
{ '2014-12-01' [1.1] } % thu
{ '2014-12-02' [1.2] } % fri
% mon
{ '2014-12-06' [1.3] } }; % tue
stock_2 = {
{ '2014-12-01' [2.1] } % thu
% fri
{ '2014-12-05' [2.2] } % mon
{ '2014-12-06' [2.3] } }; % tue
(それらは時系列を表すcell
Sないtimeseries
オブジェクトであることに注意してください)。
私は行列を構築しようとしている:それは最後の良好な値で欠損値を置き換えるよう
mat = [
[1.1 2.1] % thu
[1.2 2.1] % fri
[1.2 2.2] % mon
[1.3 2.3] ] % tue
にはどうすればいいmat
にstock_1
、stock_2
などをマージすることができますか?
私は最初のステップは、日付をとり、 '平日の始まりから#'を返し、最初の列をそれを実行する関数であると思います。
私が持っていたのであれば:
stock_1a = {
{ 1 1.1 } % thu
{ 2 1.2 } % fri
{ 4 1.3 } }; % tue
...などを、私は行列を事前に割り当て、そこからそれを記入できます。
次に、0
要素を置き換える方法を理解する必要があります。
私はいつもループでCスタイル(最大醜い)を行い、1回の前処理として実行させておくことができました。しかしそれは私の内側のコーダーを泣かせるでしょう。
これを行うにはどうすればよい方法ですか?
'fri'の場合、' [1.1 2.2] 'の代わりに' [2.1 2.1] 'であってはなりませんか? –
それはすべきです - ありがとう! (一定) –