問題タブ [zoo]

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.

0 投票する
1 に答える
3459 参照

r - 複数の xts 時系列プロットの整列

4 列の xts オブジェクトがあります。最初の 3 列は、比率の平均と信頼限界の下限と上限です。4列目はサンプルサイズです。スケールが異なるため、最初の 3 列を 1 つのグラフにプロットし、4 番目をそのすぐ下の別のグラフにプロットするのが理にかなっていると考えました。これを行う方法に関する提案はありますか?

私が持っているような xts オブジェクトを構築するコードは次のとおりです。

0 投票する
1 に答える
1195 参照

r - R (zoo) の時系列を後方参照データに rollapply する

動物園関数 rollapply を使用して、時系列に関数 (平均値など) を適用したいと思いますが、最後の N 個の既知のポイントのみを使用します。例えば:

x = zoo(c(1,2,3,4), order.by=c(10,11,12,13))

rollmean(x,2)

プロデュース:

10 11 12

1.5 2.5 3.5

11、12、13 の日付エントリと 1.5、2.5、3.5 の値を持つシリーズを作成したいと考えています。値は正しいように見えますが、rollmean が出力する日付は、私が望むものと一致していないようです。time(x)<-rollapply が実際に正しいことを行っているかどうかわからないため、使用する動物園オブジェクトに必要な日付を割り当てるだけで少し心配です。いつものように助けていただければ幸いです。

0 投票する
3 に答える
2098 参照

r - Rで1日の開始/終了日時の配列を作成します

私はRを使用して、zooとchronを使用して時系列分析を行っています。大量のデータを含む動物園オブジェクトがあり、このwindow関数を使用して、データを1日分、次の日数、次の日数などにサブセット化できるようにする必要があります。

特定の期間の毎日の日付を含む配列を作成する最も簡単な方法を見つけようとしましたが、次のことがわかりました。

これはユリウス日表記を使用しており、日付期間の最初の日から1825日(365 * 5-つまり5年)あります。次に、この配列の各要素を使用してforループを実行します。

aeronetただし、これにより、 zooオブジェクトとsande変数に異なる原点を使用しており、データが選択されていないという警告が表示されます。

これを行うためのより良い方法はありますか?またはこれを修正する方法は?基本的に私が望むのは、forループを実行することです。このループでは、aeronet_day = window(aeronet, start=s, end=e)コードを使用して、ある日のデータを含むzooオブジェクトを生成できます(たとえば、2005年5月1日00:00:00から23:59:59)。

0 投票する
2 に答える
1610 参照

r - 値が異なる時間にある場合、2 つの xts 時系列の差を計算します

R に 2 つの xts 時系列があり、互いに最も近い時間における時系列の値の差を計算したいと考えています。つまり、私の 2 つのインデックスが次の場合:

次の値の差を計算したい:

  • 13:00と12:59
  • 14:00と13:53
  • 14:30と14:23

どうすればいいですか?withの標準的なmerge方法では、適切にマージするにはインデックスが正確に等しくなければならないため、私が望むことはできません。zooall=FALSE

何か案は?

0 投票する
1 に答える
2464 参照

r - 「zoo」から「xts」への変換により、インデックスに多くの NA が作成されます

Rセッションの例でおそらく最もよく説明されている、かなり奇妙な問題があります。以下のコメントで求められているように、これを再現可能にしようとしました。

サンプル データセットは次のようになります。

XTS に変換すると、次のようになります。

これにより、次の出力が得られます。

ご覧のとおり、zoo の時系列には、chron オブジェクトによってインデックス付けされた大量のデータが含まれています。xtsただし、 を使用して時系列に変換すると、最初は問題as.xtsないように見えますが、コマンドは NA を表示し、 の概要をとstr比較すると、インデックスで 36,000 を超える NA が作成されていることがわかります!metom

なぜこれが起こっているのか、またはそれを解決するために何ができるのか、誰にも分かりますか?

0 投票する
1 に答える
692 参照

r - for ループなしで Zoo オブジェクトを連結する

日付を取得し、日中の時系列を含む動物園オブジェクトを返す関数があります。ここにモックアップがあります:

この関数を日付のリストに適用したい

結果の動物園オブジェクトを連結します。存在する場合lzply、次のようになります

私が見つけた唯一の解決策は、空の動物園オブジェクトから始めて、for ループ内で動物園オブジェクトを連結することです。しかし、それはかなり醜いです。もっと良い方法があるはずです。これをどのように行いますか?

0 投票する
2 に答える
1185 参照

r - Rでwrite.table関数を使用するには?

コマンドを使用して、オブジェクトをテキスト ファイルに保存しようとしていますwrite.table(ESH2, "c:/ESH2.txt", sep=",")。問題は、保存された時系列に、ダウンロードした日付と時刻の値が含まれていないことです。パッケージtwsInstrumentとコマンドgetBAT(ESH2)を使用しました

コマンドでRにロードしたときに持っているデータload(file = "C:/ESH2.Rdata")

最初の列には、 1323700200ではなく Date_Time が表示されます。

週に 1 回データをダウンロードしてデータをマージする簡単な方法を探しています。

psはい、これを達成するためにチュートリアル/本を読むことができます。はい、そうしますが、問題は時間がないことです。インタラクティブブローカーがデータリクエストを制限しているため、今週データの収集を開始したいと思います1min data = 5DAYS maximum。助けや提案に感謝します。

0 投票する
4 に答える
573 参照

r - R 時間の丸め

次の形式の一連の時間を持つデータ フレームがあります。

それらをこの形式に丸め/変換したいと思います:

最終的な目標は、それらをプロットの x 軸の値として使用することなので、ある種の時間形式 (zoo、as.Date など) にする必要があると思います。

助言がありますか?

0 投票する
2 に答える
913 参照

r - R: 時刻に基づいてデータフレームを効率的にサブセット化する

金融市場のバックテストとリアルタイム分析に使用する予定の大きな (150,000x7) データフレームがあります。データは、5 分間隔での投資車両の状態を表します (穴は存在しますが)。次のようになります (ただし、はるかに長くなります)。

データは R に事前に読み込まれますが、バックテスト中に次の 2 つの基準でサブセット化する必要があります。

最初の基準は、将来をのぞき見ることを避けるためのスライディング ウィンドウです。ウィンドウは、バックテストの新しい 5 分間隔ごとに、ウィンドウ全体が 5 分ずつ未来にシフトするようなものでなければなりません。この部分は次のように実行できます。

2 番目の基準は別のスライディング ウィンドウですが、特定の日の入力時間から数分time of day以内のエントリのみをスライドして含めるものです。N

例: ウィンドウのサイズが2 hoursで、入力時間がの場合、ウィンドウにはとの間の12:00PMすべての行が含まれている必要があります。Time10:00AM2:00PM

これは私が理解するのに苦労している部分です。

編集: 私のデータには穴があり、2 つの連続する行が 5 分以上離れている可能性があります。データは次のようになります (非常に拡大) ここに画像の説明を入力

ウィンドウがこれらのギャップを通過すると、ウィンドウ内のポイントの数が変化するはずです。

以下は、R でやりたいことを実行する MySQL コードです (同じテーブル構造)。

0 投票する
1 に答える
3992 参照

r - Zoo オブジェクト内の複数の列を合計する方法

これは非常に単純なはずです。私は、500 回のシリーズ (それぞれが異なる製品) と 250 期間の販売を持つ動物園オブジェクトを持っています。動物園のオブジェクトは完全に長方形で、すべてのシリーズには各時点での観測が含まれています。私のインデックス列は非常に単純な 1...250 です。

私の困難は、すべての時系列を集計して「総売上」系列を形成しようとすることです。

集計を使用してみました。これは、行を集計することに焦点を当てているようです。たとえば、数日から数か月です。しかし、すべての期間を保持したいので、時系列をまとめて集計するだけです。これは、以下に示す私の動物園オブジェクトを 5 つのシリーズのみで簡略化したものです。

次の 2 つのコマンドのいずれかを使用して集計しようとすると、元の Zoo オブジェクトとまったく同じデータが得られます!!

ただし、500列では現実的ではありませんが、これを行うことで集計できます! できればループの使用は避けたいです。

これが正しいプロトコルでない場合はお詫びします。このサイトでの最初の投稿です。