> ## Content Index
> Fetch the complete content index at: https://datascientyst.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# How to Convert Unix Time to Date in Pandas
- URL: https://datascientyst.com/convert-unix-time-to-date-pandas/
- Published: 2022-06-23T04:07:37.000Z
- Updated: 2022-06-23T04:07:37.000Z
- Author: John D K
- Tags: Time Series

To **convert Unix timestamp to readable date in Pandas** we can use method: `pd.to_datetime`

```python
df['date'] = pd.to_datetime(df['date'],unit='s')

```

So this will convert:

```
[1655822072.437469, 1655815574.333629, 1655797456.516109]

```

to datetime in Pandas:

```
DatetimeIndex(['2022-06-21 14:34:32.437469006',
               '2022-06-21 12:46:14.333628893',
               '2022-06-21 07:44:16.516108990'],
              dtype='datetime64[ns]', freq=None)

```

Let's cover all the steps in to practical example - **converting Unix timestamp to any date format (including dd/mm/yyyy)**.

## Setup

Suppose we have DataFrame with Unix timestamp column as follows:

```python
dict = {'ts': {0: 1655822072.437469,
  1: 1655815574.333629,
  2: 1655797456.516109,
  3: 1655743965.358579,
  4: 1655712623.707739},
 'reply_count': {0: 2.0, 1: 3.0, 2: 3.0, 3: 2.0, 4: None}}

pd.DataFrame(dict)

```

So data will look like:

|   | ts                | reply\_count |
| - | ----------------- | ------------ |
| 0 | 1655822072.437469 | 2.0          |
| 1 | 1655815574.333629 | 3.0          |
| 2 | 1655797456.516109 | 3.0          |
| 3 | 1655743965.358579 | 2.0          |
| 4 | 1655712623.707739 | NaN          |

![](https://datascientyst.com/content/images/2022/06/convert-unix-time-to-date-pandas.png)

## Step 1: Convert Unix time column to datetime

The first step is to convert the Unix timestamp to Pandas datetime by:

```python
df['date'] = pd.to_datetime(df['ts'], unit='s')

```

The important part of the conversion is `unit='s'` which stands for seconds. There other options like:

- `ns` \- nanoseconds
- `ms` \- milliseconds

Default value is None and all available options can be found here: [pandas.Timestamp](https://pandas.pydata.org/docs/reference/api/pandas.Timestamp.html?ref=datascientyst.com)

× **Pro Tip 1**  
Sometimes the Unix time can be stored as a string - so conversion to integer may be needed: 

.astype(int)

```python
df['ts'] = df['ts'].astype(int)

```

## Step 2: Convert Unix time to readable date

The second step is to convert Pandas datetime to a readable date. This is possible by using `dt` attribute:

```python
df['date'].dt.date

```

The output will be the date component of the original Unit time:

```
0      2022-06-21
1      2022-06-21
2      2022-06-21
3      2022-06-20
4      2022-06-20

```

## Step 3: Convert Unix time to readable time

To convert the Unix time to a well formatted time string we can use again the `dt` attribute:

```python
df['date'].dt.time

```

will give us:

```
0      14:34:32.437468
1      12:46:14.333628
2      07:44:16.516109
3      16:52:45.358578
4      08:10:23.707739

```

## Step 4: Convert Unix time to custom date or time format

Suppose we would like to get different time pattern like:

- `dd/mm/yy`
- `HH:MM`  
etc

This is possible by using method `.dt.strftime()`:

```python
df['date'].dt.strftime('%m/%Y')

```

which will result into:

```
0      06/2022
1      06/2022
2      06/2022
3      06/2022
4      06/2022

```

To find more examples you can consult with: [How to Extract Month and Year from DateTime column in Pandas ](https://datascientyst.com/extract-month-and-year-datetime-column-in-pandas/)

## Step 5: Use datetime.datetime.utcfromtimestamp

Alternative solution is to use `datetime.datetime.utcfromtimestamp` to convert Unix timestamp to date in Pandas.

To use method like `datetime.utcfromtimestamp` we will need to apply it to the Unix column:

```python
from datetime import datetime
df["ts"].apply(lambda x: datetime.utcfromtimestamp(x).strftime('%Y-%m-%dT%H:%M:%SZ'))

```

In this way we can specify the format like:

- `%Y-%m-%dT%H:%M:%SZ`
- `%d-%m-%Y %H:%M:%S`

## Conclusion

In this article, we saw multiple ways to convert timestamp columns to datetime.

We also covered multiple date and time formats, plus possible problems.