光沢のある - GGPLOT2(Boxplot)&A 'Reactive'サブセット機能を使用するための効率的な方法

StackOverflow https://stackoverflow.com//questions/20023606

質問

私は> 1000k行と5列のデータセットを持っています。 (資料と価格が該当する列)

私はGGPLOT2を使って様々な材料の価格のボックスプロットを作成する「反応的な」光沢のあるアプリを書いています。 e.gユーザはリストから4~5の材料を選択してから、光沢があり、各資料の価格のボックスプロットを作成します。

の価格の広がり:綿から成っている、紙で作られた木製

それはまた、すべての材料の組み合わせの価格の広がりの材料の組み合わせデータプロットを作成します

kixplot 価格の広がり:綿と紙&木材

サンプルデータセット(~5000行)に比較的早く機能していますが、効果的にスケーリングすることを心配しています。

データセットは静的ですので、次の解決策を見てください。

  1. 様々な材料の四分位範囲を計算する(データ< - まとめ(データ))そしてGoogleVizを使用してキャンドルスティックを作成する、

    しかし私は100以上の材料を超えるように素材の組み合わせプロットを計算しようとすると問題に遭遇するので、計算 オフラインのすべての組み合わせは実現不可能です。

  2. 各種材料の四分位範囲を計算し(Data < - summary(data))、次に各材料のサマリデータ(min、中央値、MAX、第1四分位数)の行番号を格納する行列を作成します。その後、いくつかの大まかな計算を使用して、素材の組み合わせプロットの要約()データを確立できます。 そしてGoogleVizを使用してプロットするただし、私は光沢のある計算ではほとんど経験がありません。

  3. 光沢のある&boxplot反応性サブセットを計算する最も堅牢でスケーラブルな方法を提案することができますか?

    私はこれをコードではなくメソッドに関連する質問を理解していますが、私はrの能力に慣れていて、依然としてさまざまなクラスの機能を消化しています、そして話すために「トリックを逃す」したくない。< / P>

    いつもありがとうございました!

    手法については下記をご覧ください。

    Quartileクラスタリング:意味のあるクラスタを生成するための四分位ベースのテクニック http://arxiv.org/ftp/arxiv/papers/1203/1203.4157。 PDF

    href="https://stackoverflow.com/questions/17056766/Conditionally-subsetting-and-calcatulation-a-new-variable-in-dataframe-in-shiny">新しい変数の条件付きサブセット化と計算Shiny

    のデータフレームで

役に立ちましたか?

解決

あなたが本当に1000k以上のデータセットを持っているなら、これは1mです。それはおそらくフラットファイルまたはデータベース内にあります。あなたはいつでもいくつかの事前計算をすることができ、結果をデータベーステーブルに保存し、Shiny Appを使用して、人々があなたの光沢のあるアプリを開くたびにすべてのものにロードする代わりにそのテーブルを呼び出すことができます。

私は内部の使用のためのいくつかの光沢のあるアプリを構築し、私が学んだレッスンはあなたがあなたのアプリを構築する前にあなたは慎重に考える必要があります、そしてrの計算を最小限に抑える必要があり、同時に情報を提供することができますアプリユーザーに。私たちのデータの一部は10billion +で、hiveクエリを使用すると1時間以上かかります。それから私は結果を注文した結果を終え、それをcrontabに置き、毎晩結果テーブルを更新しました。

私は好きな、あなたの方法2を好む?またはPreculculationをMySQLデータベースに保存します。(後でいくつかのリアルタイム機能が必要な場合は、Pythonスクリプトが1日1回テーブルを更新します)。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top