python - Dropping rows from a Dataframe based on Date -
how can drop rows dataframe df if dates associated df['maturity_dt'] less today's date?
i doing following:
todays_date = datetime.date.today() datenow = datetime.datetime.combine(todays_date, datetime.datetime.min.time()) #converting datetime (i,row) in df.iterrows(): if datetime.datetime.strptime(row['maturity_dt'], '%y-%m-%d %h:%m:%s.%f') < datenow): df.drop(df.index[i]) however, taking long , hoping like: df = df[datetime.datetime.strptime(df['maturity_dt'], '%y-%m-%d %h:%m:%s.%f') < datenow, results in error typeerror: must str, not series
thank you
haven't tried maybe pandas native functions iterate faster. like:
df['dt']=pandas.datetimeindex(df['maturity_dt']) newdf=df.loc[df['dt']<=todays_date].copy()
Comments
Post a Comment