Rambo partyush
Rambo partyush

Reputation: 83

How to remove trailing zeroes from Pandas Datetime Index (reformat as per wish)?

I have a Pandas dataframe with datetime index which gives me 9 decimal points after the second. I only need till ms. How do I get rid of the extra trailing zeroes and round off? Dataframe

Thanks in advance.I tried

all_data = pd.DataFrame(alldata)
all_data['time'] = pd.to_datetime(all_data['time'],format='%YYYY-%mm-%DD; %H:%M:%S.%.4f')
all_data = all_data.set_index('time')

As suggested by Jezrael:

all_data = pd.DataFrame(alldata)
all_data['time'] = pd.to_datetime(all_data['time']).dt.floor('L')
# all_data['time'] = pd.to_datetime(all_data['time'],format='%H:%M:%SS.SSSS')
all_data = all_data.set_index('time')

The output is: Floor

Also I tried:

all_data = pd.DataFrame(alldata)
all_data['time'] = pd.to_datetime(all_data['time']).dt.round('L')
# all_data['time'] = pd.to_datetime(all_data['time'],format='%H:%M:%SS.SSSS')
all_data = all_data.set_index('time')

The output is

round

I want to get rid of these zeroes.

Upvotes: 1

Views: 932

Answers (1)

jezrael
jezrael

Reputation: 862511

One idea is round values after converting to datetimes:

all_data['time'] = pd.to_datetime(all_data['time']).dt.round('L')

Or you can also use floor:

all_data['time'] = pd.to_datetime(all_data['time']).dt.floor('L')

Upvotes: 1

Related Questions