[英]pivot groupby and sum pandas dataframe
這應該很簡單,但我是在 python 工作的新手。 請問有什么建議嗎?
#original dataframe
df = pd.DataFrame({'year':[1,1,1,1,1],
'month':[4,4,4,4,4],
'mode': ['a','b','a','a','b']},
columns=['year','month','mode'])
#pivot/groupby etc
# df2=df.pivot(columns=('year','month'), values=('mode')).count()
#create this dataframe
df2 = pd.DataFrame({'year':[1],
'month':[4],
'a': [3],
'b':[2]},
columns=['year','month','a','b'])
我在 Koalas Apache Spark 環境(文檔)中工作,所以解決方案應該可以解決。
df.pivot_table(index=['year','month'], aggfunc='size', columns='mode')
或者,您可以使用pd.get_dummies()
:
pd.get_dummies(df).groupby(['year','month']).sum()
結果:
mode_a mode_b
year month
1 4 3 2
注意:我不確定它是否適用於 Koalas Apache Spark 環境。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.