2

「株式」と呼ばれる株価のデータセットがあります。各列は異なる株です。各行は株価の日付です。

特定の日付の株価をランク付けするにはどうすればよいですか?

私は試した

 tiedrank(stocks.yhoo)

そして、YHOO 株の価格をランク付けすることに成功しました。ただし、列ではなく行でランク付けしたいと思います。

また、試したところ

tiedrank(stocks(1,:))

または列1の日付列を削除するには

tiedrank(stocks(1,2:3))

エラー メッセージが表示されました: データセット配列の添字は 2 次元でなければなりません。

私は何か間違ったことをしていますか?または、行列を使用したほうがよいでしょうか?

4

1 に答える 1

1

私の理解が正しければ、日付が行、在庫が列である特定の日付の価格に従って在庫をランク付けしたいとします。行全体で使用するtiedrankには、データセットのその部分を に変換しdouble、出力インデックス リストを使用して並べ替える必要があります。

%# create index for sorting
idx = tiedrank( double( stocks(1,:) ));

%# reorder columns with index
sortedStocks = stocks(:,idx);
于 2012-12-26T21:21:20.320 に答える