0
私は次のための解決策を見つけることを試みる:Spark Data FrameのGroupDataでstat関数クロス集計を実行する方法はありますか?
- 私は
groupBy(A)
によってcratedされ、各グループごとにcrosstab(B and C)
を実行するためにgroupBy(A)
にし、より必要な3列A、BとDataFrame
、C. - を持っています
:パンダ(私はSPAKデータフレームで作成したいのですが同じ)でgrouped = df.groupby('A') for name, group in grouped: df_crossed = pd.crosstab(group['B'],group['C']) df_crossed = (df_crossed>0).astype(int) df_result[name] = df_crossed.mean(axis=1).max(axis=0)
PySpark
例で3210
更新日:
例:
In [12]: df Out[12]: A B C 0 AB 100 5 1 AB 200 5 2 AC 150 4 3 AC 500 5
A B C AB 100 5 200 5 AC 150 4 500 5
何かのようなABとACのためのクロス集計する必要がありますより:
AB
C 5 B 100 1 200 1 AC
C 5 4 B 150 0 1 500 1 0
どうすればいいですか?私はこのコードから "のために"実装する方法を見つけることができます ありがとう!
あなたは例の入力と、期待される出力を提供してもらえますか? – zero323
@ zero323私はSpark DFで実装しようとしているPandasコードを追加しました。私は後でデータフレームの例を追加します – feechka