I'm trying to delete a row in a Pandas dataframe by simply passing the date and time.
The dataframe has the following structure:
Date_Time Price1 Price2 Price3
2012-01-01 00:00:00 63.05 41.40 68.14
2012-01-01 01:00:00 68.20 42.44 59.64
2012-01-01 02:00:00 61.68 43.18 49.81
I have been trying with df = df.drop('2012-01-01 01:00:00')
But I keep getting the following error message:
exceptions.ValueError: labels [2012-01-01 01:00:00] not contained in axis
Any help on either deleting the row or just deleting the values would be much appreciated.
:-)
It looks like you have to actually use the Timestamp rather than the string:
In [11]: df1
Out[11]:
Price1 Price2 Price3
Date_Time
2012-01-01 00:00:00 63.05 41.40 68.14
2012-01-01 01:00:00 68.20 42.44 59.64
2012-01-01 02:00:00 61.68 43.18 49.81
In [12]: df1.drop(pd.Timestamp('2012-01-01 01:00:00'))
Out[12]:
Price1 Price2 Price3
Date_Time
2012-01-01 00:00:00 63.05 41.40 68.14
2012-01-01 02:00:00 61.68 43.18 49.81
Assuming DateTime is the index, if not use
df1 = df.set_index('Date_Time')