[英]Iterating within groups in Pandas
我有一個問題,我涉及遍歷大熊貓中的各個行。 如果任何人都有矢量化解決方案,那將是很好的。 基本上,我試圖計算一個小組處於特定階段的天數:
Group stage time
A 1 2000-01-01
A 1 2000-01-10
A 2 2000-01-25
A 2 2000-02-04
A 2 2000-02-20
B 1 2000-01-05
B 1 2000-02-13
C 3 2000-04-01
會成為:
Group stage time stage duration
A 1 2000-01-01 0
A 1 2000-01-10 9
A 2 2000-01-25 0
A 2 2000-02-04 10
A 2 2000-02-20 26
B 1 2000-01-05 0
B 1 2000-01-13 8
C 3 2000-04-01 0
編輯1:感謝Jeff和DSM,這非常有效:
df.groupby(["Group", "stage"])["time"].apply(lambda x: xx.iloc[0])
感謝Jeff和DSM,這非常有效:
df.groupby(["Group", "stage"])["time"].apply(lambda x: xx.iloc[0])
您可以使用datetime.strptime
方法獲取兩個日期之間的天數。
例如:
>>> from datetime import datetime
>>> date1 = "2000-01-25"
>>> date2 = "2000-02-04"
>>> delta = (datetime.strptime(date2,"%Y-%m-%d") - datetime.strptime(date1,"%Y-%m-%d"))
>>> delta.days
10
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.