我從SAP HANA SQL獲得了這段代碼,我需要將它轉換爲熊貓。 熊貓可能嗎?因爲我還沒有找到任何這種情況的例子。 這是一個虛擬代碼,所以請略過縮進和命名約定部分。在pandas中使用groupby計算聚合數據
select distinct
"A","B","C","D",
to_nvarchar(sum(to_decimal("Column2"))/TO_DECIMAL(max("Column3"))) as "Column2" ,to_nvarchar(min(to_date("Date",'YYYYMMDD')),'YYYYMMDD') as "Date",
from :Var1
group by
"A","B","C","D";
我想:
df4["Column2"]=df4.Column2.astype(int)
df4["Column2"]=df4["Column2"]/df4["Column3"].groupby(["A","B","C","D"]).agg({'
Column2': 'sum','Column3':'max'}).reset_index()
df5=df4[["A","B","C","D","Column3"]]
我得到KeyError異常 「A」
INPUT TABLE:
A B C D Column2 Column3 date
BOE MT1 TYPE1 50000 45 5 20111231
BOE MT1 TYPE1 50000 35 1 20101201
BOE MT1 TYPE1 50001 85 5 20110721
BOE MT1 TYPE4 50000 25 5 20110718
BOE MT1 TYPE4 50001 90 5 20111212
A B C D Column2 date
BOE MT1 TYPE1 50000 16 <-(45+35)/5 20101201
BOE MT1 TYPE1 50001 17 <-85/5 20110721
BOE MT1 TYPE4 50000 5 <-25/5 20110718
BOE MT1 TYPE4 50001 18 <- 90/5 20111212
是的,這可能。文檔中有足夠的示例可幫助您開始:https://pandas.pydata.org/pandas-docs/stable/generated/pandas.core.groupby.DataFrameGroupBy.agg.html – MedAli
正常最小,最大,總和可以找到2列的最大/總和並將它們分開,我們如何執行 – SWATKAT
來劃分兩列df [「C」] = df [「A」]。div(df [「B」])或df [「C」] = df [「A」]/df [「B」] – MedAli