首頁  >  文章  >  後端開發  >  如何將日期時間索引轉換為 Pandas DataFrame 中的常規欄位?

如何將日期時間索引轉換為 Pandas DataFrame 中的常規欄位?

Patricia Arquette
Patricia Arquette原創
2024-11-07 15:17:03649瀏覽

How to Convert a Datetime Index into a Regular Column in a Pandas DataFrame?

向DataFrame 添加新時間列

為了繪製數據,您需要轉換索引列'YYYY-MO- DD HH-MI-SS_SSS ',進入常規列。為此,您可以利用 'reset_index' 函數將索引轉換為新欄位。

df3 = df3.reset_index()

這將在 DataFrame df3中建立一個名為「index」的新欄位.

或者,您可以使用「複製和賦值」方法根據現有索引建立新欄位:

df3['Time'] = df3.index

這將會新增一個新欄位名為「Time」的資料列,其中包含索引中的值。

最佳化程式碼

以下是解決問題的程式碼的最佳化版本:

# 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')  

此最佳化程式碼使用'read_csv' 以及適當的選項來正確設定索引列並解析日期。此外,它還利用「就地」功能來避免建立不必要的資料副本。

以上是如何將日期時間索引轉換為 Pandas DataFrame 中的常規欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn