問題タブ [xts]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - データフレーム内のタイムスタンプ付きの行から間隔を分割および集約するための効率的な方法は何ですか?
タイムスタンプ付きの行(strptimeの結果)を持つデータフレームから、間隔の統計を集計するための最良の方法は何ですか?
間隔は、1時間、1日などです。
関数はありaggregate
ますが、それは各行を間隔に割り当てるのに役立ちません。間隔を示す列をデータフレームに追加し、それをで使用することを計画していますがaggregate
、より良い解決策があれば、それを聞くのは素晴らしいことです。
ポインタをありがとう!
サンプルデータ
タイムスタンプが03:00から15分間隔に分割された5行。
インターバル1
- 「2010-01-1303:02:38UTC」
- 「2010-01-1303:08:14UTC」
- 「2010-01-1303:14:52UTC」
インターバル2
- 「2010-01-1303:20:42UTC」
- 「2010-01-1303:22:19UTC」
結論
xts
解決策となるはずのような時系列パッケージを使用する。しかし、私はそれらを使用することに成功せず、を使用することになりましたcut
。現在、行を間隔でグループ化してヒストグラムをプロットするだけでよいので、これで十分でした。
cut
のように使用されます:
r - Rでベクトルの順序をどのように再配置しますか?
xts R オブジェクトに 3 つのベクトルがあります。それらを V1、V2、V3 と呼びます。マージ後は、左から V2、V3、V1 の順です。(左から右に) V1、V2、V3 と表示されるように並べ替えるにはどうすればよいですか?
r - 日付をインデックスとして使用してベクトルから値を選択する
名前付きベクトル があるとしbar
ます。
bar
インデックスが特定の日付範囲内にあるすべての値から選択するにはどうすればよいですか? したがって、 と の間のすべての値を探す"1995-01-01"
と"2000-06-01"
、 が得られるはずです1
。"2001-09-01"
同様に、との間の期間については"2007-11-04"
、 と を取得する必要が2
あり1
ます。
r - dynlm の xts 問題
xts が提案されている方法のように思われるため、時系列の作業で可能な限り xts を使用しようとしています。ただし、奇妙なエラーが発生しました。
CPI.NSA と INT は xts オブジェクトです。
Zooを取る関数があるときはいつでも、それをxtsに渡すことができ、それはうまくいくはずだと私は理解していましたが、ここでは明らかにそうではありません。
どうしたの?
助けてくれてありがとう。
r - Rで財務データに使用する時系列クラスは?
毎日の株価や日中データなどの金融時系列を操作する場合、どの時系列パッケージが好まれますか? xts、plain Zoo、または timeSeries などですか? 私は xts と Zoo の両方を使用していますが、xts を排他的に使用するかどうかわからない場合や、zoo の方がオーバーヘッドが軽いという利点がある場合があります。また、Rmetrics によるこれらすべてのパッケージに関するレビュー ペーパーを思い出しました。この論文では、xts は行ったいくつかのテストを完了することさえできないと主張しています。しかし、私は今その紙を見つけることができません。
r - XTS サイズ制限
最近、大規模なデータセット (40 万行以上) に取り組んでいます。これまでのところ、私は XTS 形式を使用してきました。これは、数万分の 1 の要素の「小さな」データセットで問題なく動作しました。
プロジェクトが大きくなった今、R はデータベースのデータを取得して XTS に入れるときに単純にクラッシュします。
Rは最大2 ^ 32-1要素(またはバージョンによっては2 ^ 64-1)のサイズのベクトルを持つことができるはずだと私は理解しています。したがって、XTSにはいくつかの制限がある可能性があるという結論に達しましたが、ドキュメントで答えを見つけることができませんでした. (理論的に可能なベクトルサイズの理解について、私は少し自信過剰だったのかもしれません)。
要約すると、次のことを知りたいです。
- XTSには確かにサイズ制限があります
- 大規模な時系列を処理する最もスマートな方法は何だと思いますか? (私は、分析をいくつかの小さなデータセットに分割することを考えていました)。
- エラー メッセージは表示されません。R は単に自動的にシャットダウンします。これは既知の動作ですか?
解決
- R と同じで、使用するメモリの種類 (64 ビット、32 ビット) によって異なります。とにかくとてつもなく大きい。
- データのチャンク化は確かに良いアイデアですが、必須ではありません。
- この問題は、R 2.11.1 で解決された R 2.11.0 のバグに起因します。長い日付ベクトル (ここでは XTS のインデックス) に問題がありました。
r - Rで時系列(XTSまたはZOO)を変更するにはどうすればよいですか?
私はstackoverflowを初めて使用し、Rをかなり初めて使用しましたが、長く懸命に検索したため、次の質問に対する答えが見つかりません。
時系列に対する温度のデータ ファイルが多数あります。CSV を ZOO オブジェクトとしてインポートしてから、XTS に変換しています。正しいファイルは次のようになります。
しかし、一部の時間値はわずかにずれています。つまり、00:00:00 ではなく 23:59:00、または 00:30:00 ではなく 00:29:00 です。
分単位の違いは分析にとって重要ではなく、最終的にファイルをマージしたいので、これらの時系列を修正したいので、各時系列は同じタイミングである必要があります。
「時系列を1分前にシフトしますが、データ列を変更しないでください(例:S_21)」と言うだけのコマンドが必要です。gsub()
簡単な変更で運が良かったので、データを変更する複雑な正規表現を考えましたZOO または XTS に変換される前. lag()
andについて読みdiff()
ましたが、時系列に関連してデータ値を移動しているようです; 間違っている場合は修正してください.
この問題を解決するための助けをいただければ幸いです。
r - XTS を data.frame に変更して Index を保持するにはどうすればよいですか?
次の形式の R に XTS 時系列があり、別のプログラムで作業するために CSV としてエクスポートする前に、いくつかの処理、サブセット化、および再配置を試みています。
と
そして、これを data.frame に変換して、より簡単に操作して別のプログラムにエクスポートできるようにしたいと思います。ただし、test1 <- as.data.frame(master_1)
test1 を使用すると、インデックス (つまり、日付と時刻) が表示されます。
インデックスは表示されませんが、
また、csv の書き込みwrite.csv(master_1, file="master_1.csv")
には時刻や日付は含まれません。これはなぜですか? また、他の R コマンドで使用され、適切にエクスポートされるように、日付/時刻データを列として含めるにはどうすればよいですか?
助けてくれてありがとう。
r - Rでのdata.frameオブジェクトからxtsオブジェクトへの変換
csvファイルをできるだけ効率的にxtsオブジェクトに変換したいと思います。xtsオブジェクトに変換する前に、最初にread.zooメソッドを適用してzooオブジェクトを作成する必要があるので、行き詰まっているようです。
これは、最初のGOLD.CSVファイルをR xtsオブジェクトに変換する最も効率的な方法ですか?
r - xts時系列オブジェクトの各月末のHTインデックスRSI値
まず、csvを読み込み、xtsオブジェクトを作成します。
次に、TTR(quantmodでロード)を使用して新しい一連のRSI値を作成します
今度は、毎月最終日の値のみを含む新しいシリーズを入手したいと思います。xtsにはlast()関数がありますが、それを効率的にデプロイする方法が明確ではありません。