我是初學者,我想知道這個。
例如我有這個代碼:
df = example.get_data
而且我只知道標題將是日期numpy.datetime64型別。我怎么能只保留最近 2 年的資料而不知道更多呢?
我試過這樣的事情:
df.drop(df.columns.year >= date.today().year-2, axis=1, inplace = True
但它不起作用。有什么建議?
uj5u.com熱心網友回復:
如果您的列名稱是例如, '12/02/2021', '14/01/2021', '19/08/2019'您可以像這樣選擇過去兩年的所有列:
from pandas.tseries.offsets import DateOffset
last_2_years = [c for c in df.columns if pd.to_datetime(c) > pd.Timestamp.today() - DateOffset(years=2)]
df = df[last_2_years]
選擇要保留的列通常比洗掉不需要的列更容易,但您當然也可以這樣做
cols_to_drop = [c for c in df.columns if pd.to_datetime(c) < pd.Timestamp.today()-DateOffset(years=2)]
df = df.drop(cols_to_drop, axis=1)
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/364704.html
上一篇:如何從kivy按鈕中獲取文本?
下一篇:兩鍵字典合并為一鍵串列字典
