Mengonversi string MM: SS.ss ke timedelta

Nov 05 2020

Saya mencoba mengubah MM: SS.ss menjadi timedelta. Sejauh ini, saya sudah mencoba:

df=pd.to_timedelta(df) 

itu memberi saya TypeError: arg must be a string, timedelta, list, tuple, 1-d array, or Series.

df = pd.to_datetime(df, format = "%MM:%SS:%ss")

Contoh data: 1:24.3154

Jawaban

2 Arty Nov 05 2020 at 09:56

Cobalah secara online!

import pandas as pd
df = pd.DataFrame({    # Read-in input DataFrame any way you need
    'TimeCol0': ['1:24.3154', '2:36.789'],
    'TimeCol1': ['3:57.98',   '10:15.32'],
    'OtherCol': ['a', 'b'],
})
for col in ['TimeCol0', 'TimeCol1']:  # Put here all time columns to be converted
    df[col] = pd.to_datetime(df[col], format = '%M:%S.%f') - pd.to_datetime('1900-01-01')
print(df)

Keluaran:

                TimeCol0               TimeCol1 OtherCol
0 0 days 00:01:24.315400 0 days 00:03:57.980000        a
1 0 days 00:02:36.789000 0 days 00:10:15.320000        b