Pandas DataFrame At_time 方法

PythonPythonBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

Pandas 中的 at_time() 方法用于选择一天中特定时间的行值。它可以用来根据特定时间过滤 DataFrame。如果指定的时间在 DataFrame 中不存在,它将返回一个空的 DataFrame。该方法在时间序列分析中特别有用。在本实验中,我们将学习如何在 pandas DataFrame 中使用 at_time() 方法。

虚拟机提示

虚拟机启动完成后,点击左上角切换到 Notebook 选项卡以访问 Jupyter Notebook 进行练习。

有时,你可能需要等待几秒钟,直到 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。

如果你在学习过程中遇到问题,可以随时向 Labby 寻求帮助。请在实验结束后提供反馈,我们将及时为你解决问题。

导入所需的库

import pandas as pd

创建一个 DataFrame

Values = pd.date_range('2021-01-01', periods=4, freq='12H')
df = pd.DataFrame({'A': [1, 2, 3, 4], 'B': [1, 2, 3, 4]}, index=Values)
print(df)

使用 at_time() 方法选择特定时间的值

time = '12:00'
selected_rows = df.at_time(time)
print(selected_rows)

处理缺失值

如果指定的时间在 DataFrame 中不存在,at_time() 方法会返回一个空的 DataFrame。为了处理这种情况,你可以使用 fillna() 方法用默认值填充缺失值。

time = '01:00'
selected_rows = df.at_time(time).fillna('No data')
print(selected_rows)

总结

在本实验中,我们学习了如何在 Pandas 中使用 at_time() 方法来选择特定时间的行值。通过使用此方法,我们可以轻松地基于时间过滤 DataFrame 并执行时间序列分析。我们还学习了当指定时间在 DataFrame 中不存在时如何处理缺失值。at_time() 方法是处理 Pandas 中时间序列数据的强大工具。