我目前有一個大熊貓Series
與dtype Timestamp
,我想按日期分組(並在每個組中有不同時間的許多行)。如何通過pandas中的值分組系列?
這樣做,這將是類似的東西,以
grouped = s.groupby(lambda x: x.date())
然而看似顯而易見的方法,大熊貓groupby
組系列通過其索引。我怎樣才能讓它按價值分組?
我目前有一個大熊貓Series
與dtype Timestamp
,我想按日期分組(並在每個組中有不同時間的許多行)。如何通過pandas中的值分組系列?
這樣做,這將是類似的東西,以
grouped = s.groupby(lambda x: x.date())
然而看似顯而易見的方法,大熊貓groupby
組系列通過其索引。我怎樣才能讓它按價值分組?
您應該將其轉換爲DataFrame,然後添加一個爲date()的列。您可以使用日期列在DataFrame上進行groupby。
df = pandas.DataFrame(s, columns=["datetime"])
df["date"] = df["datetime"].apply(lambda x: x.date())
df.groupby("date")
然後「日期」成爲您的索引。你必須這樣做,因爲最終的分組對象需要一個索引,所以你可以做像select a group這樣的事情。
我用這個由它的值grouby一個系列:
grouped = s.groupby(s)
或者:
grouped = s.groupby(lambda x: s[x])
這麼簡單...謝謝:) –
有三種方法:
數據框:pd.groupby(['column']).size()
系列:sel.groupby(sel).size()
系列到數據幀:
pd.DataFrame(sel, columns=['column']).groupby(['column']).size()
IIUC不'分組= s.groupby(s.dt.date)'工作?你試圖實現什麼 – EdChum
http://stackoverflow.com/questions/17929426/groupby-for-pandas-series-not-working – luca