問題タブ [combn]

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 投票する
2 に答える
97 参照

r - 組み合わせに基づいてリスト内のデータフレームに名前を割り当てます

方法で、alply(〜500)を使用してデータフレームのリストを作成しました。

デフォルトの数値名 1,2,3...500 を置き換えて、同じコンボに基づいて各 data.frame に新しい名前を割り当てたいと思います。

以下を使用して作成された再現可能な例:

各データフレームの名前が...

...これは、各 data.frame が元の関数で計算された間隔を教えてくれます。

私はlapplyを使ってみました;

しかし、私はそこにエラーを受け取ります:

私の代入関数では明らかに何かが正しくありません。任意のヒント?

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

r - r の分割グループ内で組み合わせを作成する

以下の場所、日、および数量のデータ フレームを使用して、各日にわたって場所ごとに数量の組み合わせを作成するソリューションを探しています。本番環境では、これらの組み合わせがかなり大きくなる可能性があるため、data.table または plyr のアプローチをお勧めします。

この例の出力は次のようになります。

私はいくつかのネストされたラップリーを試してみましたが、次のステップに進み、各ストア内で combn() 関数を使用する方法がわかりません。

各 Store > Day グループが独自のリストにある場合、正しい組み合わせを取得できますが、分割適用結合メソッドを使用してデータ フレームから取得する方法に苦労しています。

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

r - Combn を ID 行列 R に高速化

この小さな問題は、少なくとも何千回も繰り返さなければならない大きなコードのボトルネックであるため、ここでの主な問題は速度です。

たとえば、数値のベクトルがあります。

そのサブセットで作成できるすべての組み合わせを知りたいです。たとえば、0 と 1 のマトリックスでそれらを設定します。

実際、私は関数combnを使用しています(きれいにするための最速の方法だと思いますよね?)

次のような 3 つの行列が得られます。

したがって、1 と 0 の行列を取得するには、double for で埋めます。(ここでおそらく速度を上げることができます)

私が示したのは、コードの最も遅い部分です。この例では、約 0.012 秒かかります。次のステップは簡単です。

私が得たのは3つのマトリックスです:

これで、プロセスは非常にシンプルかつ高速になりました。

そして、これが行うことは、取得する列を貼り付けることです。0.0033 秒かかります。

このプロセスをスピードアップする必要があります。ダブルフォーまたはラップリーがこれを遅くしていると思います。誰かが助けを投稿できれば、私はそれを感謝します。

ありがとうございました。

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

r - 2パラメータ関数をcombnに渡す

組み込みのデータセット「ChickWeight」を使用しています。それぞれの名前、体重、時間、ひよこ、ダイエットについて、私の関数は単に名前の各ペア、体重時間、体重ひよこ、体重ダイエット、時間ひよこ、時間ダイエット、ひよこダイエットの差をとっています。関数と計算自体はかなり単純で不要ですが、組み合わせで2パラメーター関数を渡す方法を見つけたいと思います。

私のスクリプトは次のとおりです

更新: 名前ではなく、関数 f の数値を減算する必要があるようです。私はこれをどのように行うことができるのだろうかと思っています。おそらく、それぞれの列の数値を呼び出すことができるように、out[1,] と out[2,] を参照する方法を見つける必要があります。

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

r - R: データセットの組み合わせからより複雑な計算を実行するには?

現在、組み込みのデータセット iris からくしを持っています。これまでのところ、値のペアの lm() の係数を見つけることができるようになりました。

ただし、さらに数歩進んで、lm() の係数を使用して、さらなる計算に使用したいと思います。私はこのようなことをしたいと思います:

手順自体は簡単ですが、データ セット内の各コームに対してこれを行う方法を見つけることができませんでした。(補足として、adf.test はそのようなデータには適用されませんが、デモ用に iris データセットを使用しているだけです)。このような手順のループを記述した方がよいでしょうか?

0 投票する
0 に答える
286 参照

r - combn 使用時の添え字の範囲外エラー

計算されたリターンで均等に加重されたポートフォリオを作成しようとしています。コードは次のとおりです。

エラーが発生します:

(x, a) のエラー[.xts: 下付き文字が範囲外です

どんなアイデアでも大歓迎です。ありがとう

periodReturnこれがGOOGMのデータです。ありがとう

dputこれが(戻り値)からの出力です

code structure(c(-0.0448260333966131, 0.00524176736642552, 0.125980698458425, 0.0220172514471565, 0.00402112553295915, 0.0696550676018572,-0.0482912341997693, 0.064994366774402, 0.0300437306442582, 0.0104065916527918,-0.0388739930244611, 0.081146025058667, 0.0034634241164204, -0.011402638597028,-0.0160275013881256, 0.155539757009479, 0.0437523474012208, 0.0216861592938289,-0.021214904863745, -0.0627391996243569 , 0.0654275539119852,-0.072272674611784, 0.0598051286153989, -0.0611191529746793, 0.105087402500263, 0.0143606721205456, 0.111408771514427, 0.0921508754632087, 0.140555383580562, 0.111615081171534, 0.0383473094606691, -0.118048479720478, 0.068287032388975, 0.127654780314019, -0.00281062579627476, 0.273794978036375, 0.00618794256781762, 0.194443779143795, 0.0685258132039462, -0.0746525787979054,-0.0220577305246918, 0.0801124179135596 、-0。0100925750279684, -0.116790297417394, -0.0782235356139711, -0.0066999581321132,0.119746111370794, -0.150731145391962, 0.0632442439275321, -0.0435964159496294, 0.0862352852714747, 0.0469561214715119, -0.0449220162675337, 0.045408646444493, 0.0754102808008575, 0.031092832863087, 0.0267545945928666,-0.0525603574051095, -0.0456815138872653, 0.0967504573984614, 0.00446759589023177, 0.054223617332252, -0.0376977953833015 , 0.0213795902453539, 0.0186277507978641), .Dim = c(13L, 5L), .Dimnames = list(NULL, c("monthly.returns", "monthly.returns.1", "monthly.returns.2","monthly. returns.3", "monthly.returns.4")), index = structure(c(1440979200,1443571200, 1446163200, 1448841600, 1451520000, 1454025600, 1456704000,1459382400, 1461888000, 1464652800, 1467244800, 1469750400, 1471392000), tzone = "UTC"、tclass = "日付")、.indexTZ = "UTC"、クラス = c("xts","zoo")、.indexCLASS = "日付"、tclass = "日付"、tzone = "UTC") code