問題タブ [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.
python - パンダの .groupby とは反対の「グループ化解除」操作はありますか?
パンダのデータフレームを使用するとします...
次に、groupby()
...
次に、いくつかの集計/要約操作を実行します (私の例では、私の関数name_join
は名前を集計します):
したがって、グループ化された要約出力は次のようになります。
質問:
集計されたテーブルから次のようにすばやく効率的に取得する方法はありますか?
(注:age
列の値は単なる例です。この特定の例で平均化した後に失われる情報は気にしません)
私ができると思った方法は、あまり効率的ではないようです。
- 空のデータフレームを作成する
- のすべての行から
group_df
、名前を区切ります - 開始行にある名前と同じ数の行を持つデータフレームを返します
- 空のデータフレームに出力を追加します
python - 日付が一意でない場合、パンダの日付でグループ化した後の観測のカウント
タイムスタンプが一意でない場合、Pandas DataFrame で日付ごとに観測をカウントする最良の方法は何ですか?
理想的には、出力は 1 日あたりの観測数 (または他の高次の時間単位) を提供します。これを使用して、時間の経過に伴うアクティビティをプロットできます。
python - Pandas GroupBy.apply メソッドが最初のグループを複製する
私の最初の SO の質問: パンダ (0.12.0-4) の groupby の適用メソッドのこの動作について混乱しています。関数 TWICE をデータ フレームの最初の行に適用するようです。例えば:
最初に groupby 関数が正常に動作することを確認しましたが、問題ないようです。
次に、groupby オブジェクトで apply を使用して同様のことを実行しようとすると、最初の行の出力が 2 回得られます。
どんな助けでも大歓迎です!ありがとう。
編集: @Jeff は以下の回答を提供します。私は密度が高く、すぐには理解できなかったので、上記の例の最初のグループの二重出力にもかかわらず、apply メソッドが最初のグループで 1 回だけ動作し、元のデータ フレームを変更しないことを示す簡単な例を次に示します。 :
しかし、メソッドの戻り値を新しいオブジェクトに割り当てると、期待どおりに機能することがわかります。
python - 複数のグループ化後にパンダデータをインデックスから列に移動する方法
次のパンダデータフレームがあります。
行を重複して集約し、token
次のyears
ようにします。
インデックスに「トークン」フィールドと「年」フィールドを含める代わりに、それらを列に戻し、整数インデックスを作成したいと考えています。
python - グループのループのパンダ
カテゴリ フィールド「City」と 2 つのメトリック、Age と Weight を持つデータセットがあります。ループを使用して各都市の散布図をプロットしたいと考えています。ただし、必要な group by と loop を 1 つのステートメントで組み合わせるのに苦労しています。for ループを使用するだけでは、レコードごとにグラフが作成され、group by を実行すると、適切な数のグラフが得られますが、値はありません。
これは、コメントアウトされたグループで for ループのみを使用したコードです。
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
python - 反復後にグループを結合する
国と年の値を含むデータフレームがあります。
各国の年ごとの変化率を計算したいので、国ごとにグループ化し、グループごとに繰り返します。
新しい列を含む「グループ化」から新しいデータフレームを作成するにはどうすればよいpct
ですか?
python - パンダのSQL「GROUP BY HAVING」に相当するものは何ですか?
groupby を使用し、並行してパンダにフィルターを適用する最も効率的な方法は何でしょうか?
基本的に、私はSQLで同等のものを求めています
このようなコマンドを非常に強力にする条件付き平均、合計、条件付き確率などに至るまで、多くのユースケースがあると思います。
非常に優れたパフォーマンスが必要なので、理想的には、そのようなコマンドは、Python で実行されたいくつかの階層化された操作の結果ではありません。