Python 使用带有日期时间的开始日期和结束日期剪切数据帧
我有一个数据框,上面有一个特定股票的每日股价账户 数据帧从2014年开始,到上周结束Python 使用带有日期时间的开始日期和结束日期剪切数据帧,python,pandas,datetime,Python,Pandas,Datetime,我有一个数据框,上面有一个特定股票的每日股价账户 数据帧从2014年开始,到上周结束 >>>df 0 2014-11-19 188.479996 187.369995 188.250000 188.169998 1880800.0 1 2014-11-20 188.639999 187.289993 187.289993 188.509995 866800.0 2 2014-11-21 190.479996 188.
>>>df
0 2014-11-19 188.479996 187.369995 188.250000 188.169998 1880800.0
1 2014-11-20 188.639999 187.289993 187.289993 188.509995 866800.0
2 2014-11-21 190.479996 188.949997 190.429993 189.570007 1586200.0
3 2014-11-24 190.210007 189.770004 190.020004 190.059998 1365900.0
4 2014-11-25 190.559998 189.660004 190.339996 190.000000 1736700.0
... ... ... ... ... ... ...
1507 2020-11-13 329.730011 325.890015 326.450012 329.010010 1996100.0
1508 2020-11-16 333.119995 330.410004 331.649994 333.000000 3018800.0
1509 2020-11-17 332.500000 329.250000 330.730011 331.339996 3052100.0
1510 2020-11-18 332.140015 327.290009 331.630005 327.320007 2634900.0
1511 2020-11-19 329.089996 325.429993 326.760010 328.709991 2962161.0
我想创建一个新的数据框架df1,它只包含过去两年的数据。我将如何使用datetime进行此操作?您可以使用date time查找今天的日期,然后根据过去两年内的任何内容筛选您的df:
import datetime
import pandas as pd
# example data:
df = pd.DataFrame({'date': ['2020-11-10', '2020-11-11', '2019-11-01', '2018-11-01', '2017-11-01'],
'vals': [1,2,3,4,5]})
df['date'] = pd.to_datetime(df.date)
# get today's date
today = datetime.datetime.today()
# filter records within last two years of today
df[(today - df.date).dt.days <= 365*2]
导入日期时间
作为pd进口熊猫
#示例数据:
df=pd.数据帧({'date':['2020-11-10','2020-11-11','2019-11-01','2018-11-01','2017-11-01'],
‘VAL’:[1,2,3,4,5]})
df['date']=pd.to_datetime(df.date)
#得到今天的日期
今天=datetime.datetime.today()
#过滤当前最近两年内的记录
df[(今天-df.date).dt.days你试过什么了吗?这有帮助吗:?这回答了你的问题吗?这很有效,谢谢。我接受了答案。你介意把最初的问题投上一票吗?