首页  >  文章  >  后端开发  >  如何将日期时间索引转换为 Pandas DataFrame 中的常规列?

如何将日期时间索引转换为 Pandas DataFrame 中的常规列?

Patricia Arquette
Patricia Arquette原创
2024-11-07 15:17:03571浏览

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