Heim > Artikel > Backend-Entwicklung > Wie konvertiere ich einen Datetime-Index in eine reguläre Spalte in einem Pandas DataFrame?
Neue Zeitspalte zum DataFrame hinzufügen
Um Ihre Daten darzustellen, müssen Sie die Indexspalte „JJJJ-MO-“ umwandeln. DD HH-MI-SS_SSS', in eine reguläre Spalte. Um dies zu erreichen, können Sie die Funktion 'reset_index' verwenden, um den Index in eine neue Spalte zu konvertieren.
df3 = df3.reset_index()
Dadurch wird eine neue Spalte mit dem Namen „index“ in Ihrem DataFrame df3 erstellt .
Alternativ können Sie die Methode 'Kopieren und Zuweisen' verwenden, um eine neue Spalte basierend auf der vorhandenen zu erstellen Index:
df3['Time'] = df3.index
Dadurch wird eine neue Spalte mit dem Namen „Zeit“ hinzugefügt, die die Werte aus dem Index enthält.
Optimierter Code
Hier ist eine optimierte Version Ihres Codes, die das Problem behebt:
# Import CSV file df = pd.read_csv('university2.csv', sep=";", skiprows=1, index_col='YYYY-MO-DD HH-MI-SS_SSS', parse_dates='YYYY-MO-DD HH-MI-SS_SSS') # Extract interesting columns df2 = df[[ 'ATMOSPHERIC PRESSURE (hPa)', 'TEMPERATURE (C)', 'magnetic_mag']].copy() # Resample and aggregate interesting columns df3 = df2.resample('H').agg(['mean','std']) df3.columns = [' '.join(col) for col in df3.columns] # Reset index to create Time column df3.reset_index(inplace=True) # Plot the data plt.plot(df3['magnetic_mag mean'], df3['Time'], label='FDI')
Dieser optimierte Code verwendet 'read_csv' mit den richtigen Optionen, um die Indexspalte festzulegen und Datumsangaben korrekt zu analysieren. Darüber hinaus nutzt es die Inplace-Funktion, um die Erstellung unnötiger Datenkopien zu vermeiden.
Das obige ist der detaillierte Inhalt vonWie konvertiere ich einen Datetime-Index in eine reguläre Spalte in einem Pandas DataFrame?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!