2017-11-03 15 views
1

Ich habe einen Pandas Datenrahmen voller 1 Sekunde Daten des Formulars "10/23/2017 6:00". Jedes Mal erscheint 60 Mal in der Datei, und ich würde gerne wissen, ob es eine einfache/effiziente/intelligente Möglichkeit gibt, jeder Zeile Sekunden hinzuzufügen, so dass ich "10/23/2017 6:00:00, 10/23/2017 06.00.01 ...“Wie effizient Sekunden Platz bis zum heutigen Zeitpunkt hinzufügen

Antwort

1

Erste convert Spalte to_datetime und dann second s von cumcount und to_timedelta erstellt hinzu:

df['time'] = pd.to_datetime(df['time']) 
df['time'] += pd.to_timedelta(df.groupby('time').cumcount(), unit='s') 

Probe:

df = pd.DataFrame({'time':['10/23/2017 6:00'] * 60}) 

df['time'] = pd.to_datetime(df['time']) 
df['time'] += pd.to_timedelta(df.groupby('time').cumcount(), unit='s') 
print (df.head(10)) 
       time 
0 2017-10-23 06:00:00 
1 2017-10-23 06:00:01 
2 2017-10-23 06:00:02 
3 2017-10-23 06:00:03 
4 2017-10-23 06:00:04 
5 2017-10-23 06:00:05 
6 2017-10-23 06:00:06 
7 2017-10-23 06:00:07 
8 2017-10-23 06:00:08 
9 2017-10-23 06:00:09 
Verwandte Themen