Python Pandas - Return a numpy.timedelta64 object with ns precision

The to_timedelta64() method in Pandas converts a Timedelta object to a NumPy timedelta64 object with nanosecond precision. This is useful when you need to work with NumPy's time representation or perform operations that require nanosecond-level precision.

Syntax

timedelta.to_timedelta64()

Creating a Timedelta Object

First, let's create a Timedelta object with various time components ?

import pandas as pd

# Create a Timedelta object
timedelta = pd.Timedelta('2 days 11 hours 22 min 25 s 50 ms 45 ns')

# Display the Timedelta
print("Original Timedelta:")
print(timedelta)
Original Timedelta:
2 days 11:22:25.050000045

Converting to numpy.timedelta64

Use to_timedelta64() to convert the Timedelta to a NumPy timedelta64 object with nanosecond precision ?

import pandas as pd

# Create a Timedelta object
timedelta = pd.Timedelta('2 days 11 hours 22 min 25 s 50 ms 45 ns')

# Convert to numpy.timedelta64 object
numpy_timedelta = timedelta.to_timedelta64()

print("NumPy timedelta64 object:")
print(numpy_timedelta)
print(f"Type: {type(numpy_timedelta)}")
NumPy timedelta64 object:
213745050000045 nanoseconds
Type: <class 'numpy.timedelta64'>

Working with Different Time Units

Here are examples with different time units to show the nanosecond precision ?

import pandas as pd

# Different Timedelta examples
timedeltas = [
    pd.Timedelta('1 day'),
    pd.Timedelta('5 hours 30 minutes'),
    pd.Timedelta('123 microseconds'),
    pd.Timedelta('500 nanoseconds')
]

for td in timedeltas:
    numpy_td = td.to_timedelta64()
    print(f"Pandas: {td}")
    print(f"NumPy:  {numpy_td}")
    print("-" * 30)
Pandas: 1 days 00:00:00
NumPy:  86400000000000 nanoseconds
------------------------------
Pandas: 0 days 05:30:00
NumPy:  19800000000000 nanoseconds
------------------------------
Pandas: 0 days 00:00:00.000123
NumPy:  123000 nanoseconds
------------------------------
Pandas: 0 days 00:00:00.000000500
NumPy:  500 nanoseconds
------------------------------

Comparison

Aspect Pandas Timedelta NumPy timedelta64
Display Format Human-readable (days HH:MM:SS) Nanoseconds as integer
Precision Nanosecond Nanosecond
Use Case Pandas operations NumPy array operations

Conclusion

The to_timedelta64() method converts Pandas Timedelta objects to NumPy's timedelta64 format with nanosecond precision. This conversion is essential when interfacing between Pandas and NumPy time operations.

Updated on: 2026-03-26T16:24:42+05:30

452 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements