簡體   English   中英

如何在pandas中使用日期字符串的一部分進行groupby?

[英]How to do groupby in pandas with part of date string?

        Date Description 
0  6/09/2012      Amazon
1  6/09/2012      iTunes
2  6/08/2012      iTunes
3  6/08/2012    Building
4  6/08/2012   Slicehost

我有一個像上面這樣的DataFrame 我可以使用函數get_day()來選擇上述日期字符串的一天部分,如下所示:

def get_day(date_string):
    d = datetime.strptime(date_string, '%m/%d/%Y')
    return d.day

現在,我如何將此函數傳遞給上面的DataFrame,以便在當天進行groupby而不是使用datestring本身。 無法通過查看文檔來弄明白。 任何幫助贊賞。

df.groupby(get_day)

但我會首先將日期字符串轉換為datetime對象。

另一個問題是,您正在呼叫.day ,它返回一個月中的某一天(編號1-31)。 你可能想調用.date()

def get_day(date_string):
    return datetime.strptime(date_string, '%m/%d/%Y').date()

或直接

df.groupby(lambda x: datetime.strptime(date_string, '%m/%d/%Y').date())

暫無
暫無

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

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