問題タブ [pandas-groupby]

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

python - パンダの .groupby とは反対の「グループ化解除」操作はありますか?

パンダのデータフレームを使用するとします...

次に、groupby()...

次に、いくつかの集計/要約操作を実行します (私の例では、私の関数name_joinは名前を集計します):

したがって、グループ化された要約出力は次のようになります。

質問:

集計されたテーブルから次のようにすばやく効率的に取得する方法はありますか?

(注:age列の値は単なる例です。この特定の例で平均化した後に失われる情報は気にしません)

私ができると思った方法は、あまり効率的ではないようです。

  1. 空のデータフレームを作成する
  2. のすべての行からgroup_df、名前を区切ります
  3. 開始行にある名前と同じ数の行を持つデータフレームを返します
  4. 空のデータフレームに出力を追加します
0 投票する
3 に答える
3435 参照

python - 日付が一意でない場合、パンダの日付でグループ化した後の観測のカウント

タイムスタンプが一意でない場合、Pandas DataFrame で日付ごとに観測をカウントする最良の方法は何ですか?

理想的には、出力は 1 日あたりの観測数 (または他の高次の時間単位) を提供します。これを使用して、時間の経過に伴うアクティビティをプロットできます。

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

python - Pandas GroupBy.apply メソッドが最初のグループを複製する

私の最初の SO の質問: パンダ (0.12.0-4) の groupby の適用メソッドのこの動作について混乱しています。関数 TWICE をデータ フレームの最初の行に適用するようです。例えば:

最初に groupby 関数が正常に動作することを確認しましたが、問題ないようです。

次に、groupby オブジェクトで apply を使用して同様のことを実行しようとすると、最初の行の出力が 2 回得られます。

どんな助けでも大歓迎です!ありがとう。

編集: @Jeff は以下の回答を提供します。私は密度が高く、すぐには理解できなかったので、上記の例の最初のグループの二重出力にもかかわらず、apply メソッドが最初のグループで 1 回だけ動作し、元のデータ フレームを変更しないことを示す簡単な例を次に示します。 :

しかし、メソッドの戻り値を新しいオブジェクトに割り当てると、期待どおりに機能することがわかります。

0 投票する
4 に答える
78722 参照

python - 複数のグループ化後にパンダデータをインデックスから列に移動する方法

次のパンダデータフレームがあります。

行を重複して集約し、token次のyearsようにします。

インデックスに「トークン」フィールドと「年」フィールドを含める代わりに、それらを列に戻し、整数インデックスを作成したいと考えています。

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

python - グループのループのパンダ

カテゴリ フィールド「City」と 2 つのメトリック、Age と Weight を持つデータセットがあります。ループを使用して各都市の散布図をプロットしたいと考えています。ただし、必要な group by と loop を 1 つのステートメントで組み合わせるのに苦労しています。for ループを使用するだけでは、レコードごとにグラフが作成され、group by を実行すると、適切な数のグラフが得られますが、値はありません。

これは、コメントアウトされたグループで for ループのみを使用したコードです。

0 投票する
4 に答える
36570 参照

python - What is the difference between pandas agg and apply function?

I can't figure out the difference between Pandas .aggregate and .apply functions.
Take the following as an example: I load a dataset, do a groupby, define a simple function, and either user .agg or .apply.

As you may see, the printing statement within my function results in the same output after using .agg and .apply. The result, on the other hand is different. Why is that?

Using apply:

Using agg

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

python - 反復後にグループを結合する

国と年の値を含むデータフレームがあります。

各国の年ごとの変化率を計算したいので、国ごとにグループ化し、グループごとに繰り返します。

新しい列を含む「グループ化」から新しいデータフレームを作成するにはどうすればよいpctですか?

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

python - パンダのSQL「GROUP BY HAVING」に相当するものは何ですか?

groupby を使用し、並行してパンダにフィルターを適用する最も効率的な方法は何でしょうか?

基本的に、私はSQLで同等のものを求めています

このようなコマンドを非常に強力にする条件付き平均、合計、条件付き確率などに至るまで、多くのユースケースがあると思います。

非常に優れたパフォーマンスが必要なので、理想的には、そのようなコマンドは、Python で実行されたいくつかの階層化された操作の結果ではありません。