問題タブ [split-apply-combine]
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.
python - ワールド カップ トーナメント グループ内でペアリングを生成する
2015 FIFA 女子ワールドカップのデータをいくつかまとめました。
ここで、次のような形式で、各group
from内に 6 つの可能なペアリングまたは一致を含む新しいデータフレームを生成したいと思います。df
これを行うための簡潔でクリーンな方法は何ですか? group
それぞれのandを介して一連のループを実行できますが、分割-適用-結合パラダイムを使用team
してこれを行うためのよりクリーンなベクトル化された方法が必要であると感じています。pandas
編集: R の回答も歓迎します。ここで R と Pandas の方法を比較すると面白いと思います。r
タグを追加しました。
コメントで要求されている R 形式のデータは次のとおりです。
r - Rでデータフレームを変更して特定の値を合計する
特定の値を追加して集計したいデータ フレームがあります。6 つのクラスターがあるとします。次に、各クラスターからのデータを、出力データ フレームに入れられる値 x を生成する関数にフィードします。
集計するには、3 年すべてにわたってクラスター 1 の x 値を合計し、seroconv.cluster1=sum(data.all[c(1:3),6])
クラスターごとに繰り返します。
現在、クラスターの数を変更するたびに、x の追加を手動で変更する必要があります。n.vec <- seq(6, 12, by=2)
n.vec を関数に入力して x を取得し、クラスターの数が変化するたびに R に各クラスターの x 値を加算させたいと思います。したがって、6 つのクラスターを実行し、クラスターごとにすべての x を合計します。次に 8 と x を合計します。
r - 集計されたカウントを追加のデータフレーム行として追加する
英語のアルファベットの文字とその頻度を含むデータ フレームがあります。ここで、母音と子音の頻度、および出現回数の合計もわかっていると便利です。この情報をすべてプロットしたいので、1 つのデータ フレームに収める必要があります。
そのため、次のような状況に陥ることがよくあります。
私はこれを正しい方法で行っていますか、それともより洗練された解決策がありますか?
私の説明はひどく混乱していたようです:
基本的に、データ フレームに新しいカテゴリ (行) を追加したいと考えています。この非常に単純な例では、単純に要約されたデータです。
(時系列プロットの場合、集計関数を使用しています。)
r - R の複雑な減算
列から情報を差し引く必要があるデータセットに取り組んでいます。これは、1 人が最大 6 回、最小 2 回までテストされる反復測定データセットです。データは長い形式です
サンプルのデータセットは次のとおりです。
最も単純な形式では、私のデータには次の変数が含まれています。
Participant ID
- 一意の英数字コードTime
- 1 ~ 6 の範囲Score
- テスト 1 のスコアは 1 ~ 10 です。スコアは同じままであるか、テストを繰り返しても低下する可能性があります。
テスト セッションでの連続したスコアの差を計算し、それらを合計して、各参加者が持っているスコアの数で割りたいと思います。より単純な形式では、次のようになります。
分母は、参加者ごとに異なる数の繰り返し測定を考慮する必要があります。
以前、私のコードはこれでした:
このコードの問題は、スコアを相互に累積的に減算することです。スコア1と2、2と3、3と4などの違いを追加したい.
これをどのように行うのが最善ですか?
r - Rで2列でテーブルを要約する方法
次のように、結果が月ごとの特定のユーザーの小計として表示されるように、このデータセットを期間ごとに、2 番目を支払人 ID ごとにグループ化して要約したいと思います。
data.frame:
結果は次のようになります。
これを行う最良の方法はどれですか?ありがとう!