1. ホーム
  2. dataframe

[解決済み] PySpark DataFrameの集約の列の名前の変更

2023-03-20 19:27:25

質問

PySparkのDataFrameを使ってデータを解析しています。例えば、以下のようなDataFrameがあるとします。 df があって、それを集計しているとします。

(df.groupBy("group")
   .agg({"money":"sum"})
   .show(100)
)

これで

group                SUM(money#2L)
A                    137461285853
B                    172185566943
C                    271179590646

集計はうまくいきますが、新しいカラム名である SUM(money#2L) . このカラムを人間が読めるような名前に変更する方法はありますか? .agg メソッドから人間が読めるような名前に変更する方法はありますか?たぶん、もっと似たようなことを dplyr :

df %>% group_by(group) %>% summarise(sum_money = sum(money))

どのように解決するのですか?

私はまだ dplyr 構文が好きですが、このコードスニペットで十分です。

import pyspark.sql.functions as sf

(df.groupBy("group")
   .agg(sf.sum('money').alias('money'))
   .show(100))

冗長になる。