我有一个Dataframe,其中有2列。
dataframe 1:-
product | act
a | A
b | B
c | C
d | D
b | C
a | D
我希望输出如下:
product act product_count act_count2
a A 2 1
b B 2 1
c C 1 2
d D 1 2
我要对每一列分别计数。
2条答案
按热度按时间bvuwiixz1#
您可以通过在pyspark中使用窗口来实现这一点
下面是伪代码(我没有运行它,但您的代码希望如下)
假设您正在使用Dataframe(df)
cgyqldqp2#
您可以使用df.select()作为
df_count = df.select([F.count(df[col]).over(Window.partitionBy(col)).alias("{}_count".format(col)) for col in df.columns])