我有一个熊猫数据框,其中包括两列,船只名称和延迟指示器。船只名称是船只的字符串名称,延迟指示器是0或1(布尔值)。
我的数据框:
df = pd.DataFrame({
"Vessel.Name": ["Spirit of British Columbia", "Queen of New Westminster", "Spirit of Vancouver Island", "Coastal Celebration", "Spirit of British Columbia"],
"Delay.Indicator":[0, 0, 0, 1, 0]
})
外观:
Vessel.Name Delay.Indicator
Spirit of British Columbia 0
Queen of New Westminster 0
Spirit of Vancouver Island 0
Coastal Celebration 1
Spirit of British Columbia 0
我的目标是获得一个DataFrame,其中包含每个不同的船名,以及两个新列,分别指示每个不同的船名的计数及其延迟指示符中的总数“ 1”。不确定是否有用于此的pandas方法,或者是否应该遍历python列表?
答案 0 :(得分:0)
一个应用了聚合函数的简单groupby应该可以解决问题:
gcloud functions deploy $FUNCTION_NAME --runtime $RUNTIME --trigger-topic $TOPIC_NAME
输出:
df.groupby("Vessel.Name")["Delay.Indicator"].agg(['count', sum])