問題タブ [reshape2]
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 - reshape2 メルトの戻り値 = NA はなぜですか?
reshape2 が=をmelt
返すのはなぜですか?value
NA
reshape では機能しますが、reshape2 では機能しません。
データファイルの例を次に示します。
として保存されているとしましょう/tmp/foo.csv
。
変形の使用:
reshape2 の使用:
を使用するlibrary("reshape")
と、value
列に数字が含まれていることがわかりますがlibary("reshape2")
、 の場合はNA
、同じデータの があります。
r - reshape関数は「添え字が範囲外」エラーを出します
次のようなROC.Valueデータフレームがあります。
正しいデータを取得すると、NA値が置き換えられます。
次のコードを使用している場合は、長い形式に変換してみてください(積み重ねられた箱ひげ図を作成できます)。
このエラーが発生しますError in reshapeLong(data, idvar = idvar, timevar = timevar, varying = varying, : subscript out of bounds
。
何か提案はありますか?私が試したすべてがうまくいきませんでした(新しいエラーが発生しました)。
r - 散布図用にデータフレームを変形/溶解する
次のようなデータファイルがあります。
1 つの x 値と複数の y 値 (ys) を使用して散布図を作成したいと考えています。メルトで形状変更を使用しようとしましたが、このプロットを作成するための適切なデータ構造を作成できませんでした。Rでこれを行い、ggplotでプロットするにはどうすればよいですか? 助けてくれてありがとう。
r - データフレームでキャストが機能しない
大きなデータ フレームを扱っており、ピボット テーブル タイプの関数を実行したいと考えています。reshape2 パッケージを使用しようとしましたが、何らかの理由で溶融データ フレームが再形成されません。
私はこのようなフレームを取りたいです:
そして、それを(Typeで集計)にします:
次のコードを実行しています。
しかし、データフレームをまったく変更していません。私はどこを台無しにしていますか?
編集:
この問題についてもう少し情報を含めています。溶けたデータ フレームに到達する前に、必要な場所にデータを移動するために非常に悪いクリーンアップを行っています。以下のコードは理想的ではなく、実際に修正する必要があることはわかっていますが、基本的には複数の CSV ファイル (同じ列名を持つ) をアップロードし、それらを結合し、いくつかの値を再コーディングし、いくつかの列を削除し、データのサブセットを選択し、それを溶融フレームに入れ、dcast を使用して再形成しようとしています。特定の値を再コーディングするコードを削除しましたが、その部分は問題なく動作しているようです。コードの一部を次に示します。
今、私は次のエラーが発生しています:
構造のエラー (順序付け、dim = ns) : ディム [製品 18300] がオブジェクト [0] の長さと一致しません
からの出力dput(head(fulldata.sub,40))
:
編集
>str(fulldata.sub) および str(m.data) からの出力を含むもう 1 つの編集
data.frame': 130098 obs. $ county :
Factor w/ 3237 level "Abbeville County, South Carolina",..: 121 121 121 121 121 121 121 121 131 131 ...
$ industry : Factor w/ 369 level "Accounting, tax prepare,簿記、給与サービス",..: 283 239 239 1 1 33 358 358 274 273 ...
$ tax_type : 4 レベルの係数 "すべての事業所",..: 4 1 1 1 1 1 1 1 4 4 . ..
$ 企業: num 10 61 61 14 14 10 4 4 358 312 ...
$ 収益: num 31466 21347 21347 31717 31717 ...
$ 給与: num 5521 4863 4863 13729 13729 ...
$ num_employees: 4 num_6 256 571 571 ...
$ non_emp_firms : num 3122 1887 1887 2486 2486 ...
$ non_emp_firms_rev: num 17550 96 96 12669 12669 ...
'data.frame': 780588 obs. $ county :
Factor w/ 3237 level "Abbeville County, South Carolina",..: 121 121 121 121 121 121 121 121 131 131 ...
$ industry: Factor w/ 369 level "Accounting, tax prepare,簿記、給与サービス",..: 283 239 239 1 1 33 358 358 274 273 ...
$ tax_type: 4 レベルの係数 "すべての事業所",..: 4 1 1 1 1 1 1 1 4 4 . ..
$ 変数: 6 レベルの因子 "会社","収益",..: 1 1 1 1 1 1 1 1 1 ...
$ 値: num 10 61 61 14 14 10 4 4 358 312 .. .
r - reshape2のdcastを使用して累積/累積行ごとの合計を取得する方法
RI集合体データでのreshape2ライブラリからのdcastの使用(合計)
これにより、
このように累積値を取得できるようにしたいと思います。
reshape2のdcastドキュメントと元のreshapeペーパーでfun.aggregateの例を見つけようとしました
r - reshape2: 集約せずに高さを幅にキャストします
検討
私が欲しい
しかし、私は(教育目的で)dcast()
inでそれをやりたいと思っています。reshape2
これは可能ですか?
r - recast() を使用して複雑なデータセットを長いものから広いものに再形成する
私は lme4 に付属のデータセットを使用しており、reshape2 を適用してロングからワイドに変換する方法を学習しようとしています [投稿の最後にある完全なコード]。
データセットには 9 つの変数があります。「怒り」、「性別」、および「id」は「項目」によって変化しませんが、「resp」、「btype」、「situ」、「モード」、および「r2」は変化します。
reshape() を使用して、データセットをロング フォーマットからワイド フォーマットに変換することに成功しました。
これは、123 個の変数で 316 個の観測値を生成し、正しく変換されているように見えます。ただし、reshape/reshape2 を使用してワイド データフレームを再現することはできませんでした。
recast が id 変数を定義する方法について 100% 明確ではないかもしれませんが、なぜ "Anger" が表示されないのか非常に混乱しています。同様に、
誰かが私が間違っていることを見ることができますか? メルト/キャストの理解を深めたい!
完全なコード:
r - 財務-plyrとrportfolioを使用したランダムポートフォリオ-列を分割する必要があります
実際のポートフォリオのパフォーマンスを仮想のランダムポートフォリオのパフォーマンスと比較しようとしています。
これが私が扱っているデータセットのサンプルです。2か月分のデータ、ポートフォリオ内のマネージャーの名前、およびそれらのマネージャーのリターン、割り当て、および属性が表示されます。
データをRに取り込むには、データをクリップボードにコピーしてから、
ランダムなポートフォリオを作成するために、、、、ddply
およびmutate
からのrlongonly
関数を使用plyr
しrportfolio
ます。
rlongonly
関数内:
- mの値は、作成したいランダムポートフォリオの数です。
- nの値は、その期間の割り当ての数です。
- kの値は、ゼロ以外の割り当ての数です。
- xuの値は、割り当ての上限です。
帰属は単にリターン*割り当てです。
m = 1の場合、すべて問題ありません。m> 1の場合、出力の寸法は正しくありません。
mydata.new2には、7列が必要なときに6列しかありません。最後の列「new.attr」は、基本的に1列に2列です。
melt
mydata.new2を実行しようとすると、次のエラーが発生します。
「new.attr」列を分割して、データを溶かしてグラフ化するにはどうすればよいですか?
r - キャストする関数の既成のリストを渡す方法
cast
、reshape2
パッケージから、呼び出しで直接渡された場合、一連の関数を処理できます。例えば:
ただし、事前に関数のリストを作成しようとすると、これは機能しません。例えば:
この特定の動作を処理するキャストのコードを調べましたが、正直なところ、それが何をしているのかわかりません。
事前に作成された関数のリストを変数として渡す方法はありますcast()
か?
r - データフレームをグループごとに部分的な「ワイド」および部分的な要約に変換する
次のデータフレームがあります
これは、ユーザー ID の後に時間、val1、val2、および val3 が続くことを表します。キャストを使用して、reshape または base R のいずれかを使用してデータ フレームを次の形状に配置したいと考えています。ID ごとに、24 フィールドのそれぞれに val1 の値が必要であり、同時に val2 と val3 の合計を見つけます。たとえば、以下に示す
どんな助けでも大歓迎です。前もって感謝します。