Mikrosekunden aus pandas.Timedelta-Objekt erhalten

English Deutsch

Wenn du ein pandas.Timedelta-Objekt hast, kannst du Timedelta.total_seconds() verwenden, um die Sekunden als Gleitkommazahl mit Mikrosekunden-Auflösung zu erhalten und dann mit einer Million (1e6, die Anzahl der Mikrosekunden in einer Sekunde) zu multiplizieren, um die Anzahl der Mikrosekunden im Timedelta zu erhalten:

timedelta_get_microseconds.py
timedelta.total_seconds() * 1e6

Falls du einen Integer möchtest, verwende

timedelta_microseconds_int.py
int(round(timedelta.total_seconds() * 1e6))

Beachte, dass die Verwendung von round() hier erforderlich ist, um Fehler aufgrund der Gleitkommagenauigkeit zu vermeiden.

oder verwende diese Funktionsdefinition:

microseconds_from_timedelta.py
def microseconds_from_timedelta(timedelta):
    """Berechnet die Mikrosekunden in einem Timedelta als Gleitkommazahl"""
    return timedelta.total_seconds() * 1e6

def microseconds_from_timedelta_integer(timedelta):
    """Berechnet die Mikrosekunden in einem Timedelta als Integer"""
    return int(round(timedelta.total_seconds() * 1e6))

# Verwendungsbeispiel:
us = microseconds_from_timedelta(timedelta)
print(us) # Gibt 2000751.9999999998 aus

us = microseconds_from_timedelta_integer(timedelta)
print(us) # Gibt 2000752 aus

Check out similar posts by category: Pandas, Python