簡體   English   中英

Pandas:Excel sumifs 等價物

[英]Pandas: Excel sumifs equivalent

對於下表,我如何實現以下SUMIFS語句的 Python 等效項?

SUMIFS(A3:A7,B3:B7,"<="&C1,C3:C7,">0")

在此處輸入圖片說明

數據幀的代碼:

dfp = pd.DataFrame({'Value': [1223, 34, 34, 345],
                    'Date': ['04/03/2020', '06/04/2020','08/06/2020','12/12/2020'],
                    'Tval' : [0.01,0.015,-0.023,-0.0005]})

預期輸出為 1257。

這將解決問題:

from datetime import datetime as dt

# Define the reference date as a datetime object.
date = dt(2020, 12, 5)
# Convert dates to a datatime object for compare.
df['Date'] = pd.to_datetime(df['Date'], format='%d/%m/%Y')

# Apply filters and sum.
df.loc[(df['Tval'] > 0) & (df['Date'] <= date), 'Value'].sum()

輸出:

>>> 1257

注:以上假設為國際日期格式(D/M/Y)。

暫無
暫無

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

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