Home > Net >  int64 to HHMM string
int64 to HHMM string

Time:12-24

I have the following data frame where the column hour shows hours of the day in int64 form. I'm trying to convert that into a time format; so that hour 1 would show up as '01:00'. I then want to add this to the date column and convert it into a timestamp index.

enter image description here

Using the datetime function in pandas resulted in the column "hr2", which is not what I need. I'm not sure I can even apply datetime directly, as the original data (i.e. in column "hr") is not really a date time format to begin with. Google searches so far have been unproductive.

CodePudding user response:

While I am still in the dark concerning the format of your date column. I will assume the Date column is a string object and the hr column is an int64 object. To create the column TimeStamp in pandas tmestamp format this is how I would proceed>

Given df:

    Date    Hr
0   12/01/2010  1
1   12/01/2010  2
2   12/01/2010  3
3   12/01/2010  4
4   12/02/2010  1
5   12/02/2010  2
6   12/02/2010  3
7   12/02/2010  4  

df['TimeStamp'] = df.apply(lambda row: pd.to_datetime(row['Date'])   pd.to_timedelta(row['Hr'], unit='H'), axis = 1)   

yields:

    Date    Hr  TimeStamp
0   12/01/2010  1   2010-12-01 01:00:00
1   12/01/2010  2   2010-12-01 02:00:00
2   12/01/2010  3   2010-12-01 03:00:00
3   12/01/2010  4   2010-12-01 04:00:00
4   12/02/2010  1   2010-12-02 01:00:00
5   12/02/2010  2   2010-12-02 02:00:00
6   12/02/2010  3   2010-12-02 03:00:00
7   12/02/2010  4   2010-12-02 04:00:00  

The timestamp column can then be used as your index.

  • Related