簡體   English   中英

在給定特定條件的情況下,如何在 pandas dataframe 上使用 .count()?

[英]How can I use .count() on a pandas dataframe given a certain condition?

我已經嘗試了這兩個:

    df["Buys"] = df.groupby(['symbol','month','counterparty','side'])[df[df['side']=='Buy']].count()
    df["Sells"] = df.groupby(['symbol','month','counterparty','side'])[df['side']=='Sell'].count()

但是第一次我得到錯誤“DataFrame 不可哈希”,第二次“True 不是一個鍵”。 我在這里做錯了什么?

好吧,我想我明白了一半。 我做了

dfBuys = df.groupby(['symbol','month'])['side'].apply(lambda x: (x=='Buy').sum()).reset_index(name='count')
df["Buys"] = dfBuys["count"]

dfBuys["count"] 正是我要找的,但無論出於何種原因,有時 df["Buys"] 不會填充,但在大多數情況下它都有效。

暫無
暫無

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

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