簡體   English   中英

Pandas groupby 計算百分比變化列

[英]Pandas groupby calculating percentage change column

我是熊貓數據框的新手,我需要幫助來理解百分比變化。

我確實從查詢中生成了一個 csv,以便通過為列分配排名來計算平均值。

rank       ds         continent           region      device     traffic
1          08/13      North america         US        mobile      7300
1          08/13      North america         US        desktop     2500
2          08/06       Europe               UK        mobile      3300
2          08/06       Europe              Italy      desktop     5600

之后,我確實在第二個 csv 中計算了“1 周”和“3 周”的平均流量。

df_1 = df.loc[df['rank'] == '1']
df_1['traffic'] = df_1['traffic'].astype(float).fillna(0)
avg_1 = df_1.groupby(['continent','region','device']).mean()
avg_1['ds'] = '1 week'

last_3 = df.loc[df['rank'].isin(['2','3','4'])]
last_3['traffic'] = last_3['traffic'].astype(float).fillna(0)
avg_3 = last_3.groupby(['continent','region','device']).mean()
avg_3['ds'] = '3 week'  

均值的最終輸出:

market               country       traffic       device          ds
North america         US           36015.33      mobile        1week
North america         US           40663.67      desktop       3week
Europe                UK           360270.7      mobile        1week 
Europe                Italy        1363183       desktop       3week

任何人都可以幫助我計算 1 周和 3 周的百分比變化流量作為單獨的列嗎? 謝謝!!

這個想通了使用 pct_change()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM