問題タブ [tapply]
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 - R の複数の数値の平均
このコードでデータを生成するとします
だから今、私はこのようなものを持っています
月の特定の日付の平均値を取得するにはどうすればよいですか?
したがって、この場合、出力を次のようにしたいと思います...
私は本当に助けていただければ幸いです:)
r - R でリストを tapply(.) から data.frame に変換する
次のコードがあります
として表示させたい
Rでどのように行うことができますか?
r - tapply 関数は、args の長さが等しくないが、一致しているように見えると不平を言う
以下は、失敗した呼び出し、エラー メッセージ、および問題の長さを示すいくつかの表示です。
r - R - 複数の条件に基づいて最小値を見つけ、最小値に基づいて作成された 1 つまたは複数の文字列を返す
この質問は、@alexis_laz によって非常にきちんとした方法で回答されたこの質問のフォローアップとして尋ねています。残念ながら、彼の方法 (ゼロの負荷で長いデータフレームを作成することを含む) は、元のデータセットが劇的に拡大した現在、データ量が多すぎます。
基本的な問題はこれです。x、y、z の 3 つの列を持つデータフレームを考えてみましょう。すべての y の最小の x 値に関連付けられている z と x の値を探しています。理想的な出力はy[i]_x[i]_z[i]
、関連する行番号 i を持つタイプの文字列です。
ここに再現可能な例があります
set.seed(1)
望ましい出力(dfを注文してスクロールするだけで見つけました):
df <- df[order(y,x,z),]
- y = A、min(x) = 2、z = 313 の場合 => 目的の結果 (NA を削除できます) は
paste0(y,"_",x,"_",z)
、A_1_313のようになります。 - y = B の場合、min(x) = 2、z = 782、6008、または 7230 の場合 => 望ましい結果は 3 つの文字列すべて、つまり B_2_782、B_2_6008、および B_2_7230 になります。
- y = F、min(x) = 3 の場合、この最小値は 5 つの異なる z 値 (4114、4712、5336、7234、7520) にリンクされているため、5 つの文字列を取得したいと思います ....
実際のデータセットのどこかに出力として 5 つを超える文字列があるとは思いません。前述のように、@alexis_laz はほぼ同じ問題 (これも私から質問されました) に対する解決策を提供しましたが、その解決策には、私のデータセットが37から15000社:)
前もって感謝します!
max.col
PS:とwhich.max
組み合わせて使用するソリューションを探しましたtapply
が、これまでのところうまくいきませんでした。tapply(x,y,which.min)
which.min は、tapply 関数で常に 1 であるベクトル/行列内の位置を返すため、順序付けられた df で単に 1 のリストを返すようなものがあるようです。したがってtapply
、df の行番号を使用するが返すものは、ジョブの 99% になります。
r - 2 つの異なるグループからの同じ観察結果を追加します。プライヤーかタプラか?
関数の作成を検討しています。
特定のグループ内での観測の発生回数を追加したいと思います (例: 5、5 回の発生を 2 回)。ビジネス別の週内の同じ日数が合計されます。合計された値は、新しい行 'Total-occurrences.' に表示されます。
tapply または plyr はこれに対応していますが、いくつかのニュアンスに行き詰まっています。
ありがとう!
r - 「with」と「tapply」を使用して、複数の要因に基づいて新しい変数を計算する方法
別の変数「Period」に基づいて、単一グループ「Actrl」の電話処理時間「Handle」の平均「ctrlmeans」を取得しようとしています。次に、データフレーム内の各人の「ハンドル」からその平均を差し引いて、新しい変数「差」を作成したいと思います。
これが私がしたことです:
私のコマンド:
なぜNAを取得するのですか?
tapply コマンド「queue」に追加のグループ化変数を含めた場合、どうすればよいでしょうか?
r - dplyr group_by と tapply の結果の違いを理解する
これら 2 つの実行で同じ結果が得られることを期待していましたが、結果は異なります。dplyr コードがどのように機能するかを本当に理解しているかどうか疑問に思います (パッケージとオンラインで dplyr について見つけることができるほとんどすべてを読みました)。結果が異なる理由、または同様の結果を得る方法を誰か説明できますか?
更新: これが最も効率的な方法だとは思いませんが、次のコードは、tapply アプローチと一致する結果をもたらします。Hadleyの提案に従って、結果を1行ずつ精査しましたが、これはdplyrを使用して思いついた最高のものです
更新: なんらかの理由で、分析したいすべての変数をグループ化する必要があると考えました。これは私が必要としていたすべてであり、パッケージ内の例に近いものです。