[英]How do I count the amount of times a unique value in a dataframe meets a requirement?
我在 df 中總共有大約 9000 行和 26 個不同的單元。 df的一個例子如下:
單元 | 總時間 |
---|---|
E271 | 0 天 00:05:32 |
我想創建一個列,其中包含每個單元出現在 df 中的次數,以及一個單獨的列,該列計算每個單元的時間低於 6 分鍾的次數。 新的 df 應該如下所示:
單元 | Total_dispatches | Amount_time_under | Perc_success_rate |
---|---|---|---|
E271 | 1154 | 883 | 76.5% |
任何幫助,將不勝感激!
你可以這樣做:
data = [
{"Unit": "E1", "Total_time":pd.to_timedelta('0 days 00:05:01.00003')},
{"Unit": "E1", "Total_time":pd.to_timedelta('0 days 00:07:01.00003')},
{"Unit": "E1", "Total_time":pd.to_timedelta('0 days 00:05:01.00003')}
]
df = pd.DataFrame(data)
df["Total_dispatches"] = df.groupby("Unit").transform("count")
time_limit = pd.to_timedelta('0 days 00:06:00.00000')
df["under_6_min"] = (df["Total_time"]<time_limit).astype(int)
df["Amount_time_under"] = df.groupby("Unit")["under_6_min"].transform("sum")
df["Perc_success_rate"] = (df["Amount_time_under"]/df["Total_dispatches"])*100
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.