Pandas 序列asfreq()

原文:https://www.studytonight.com/pandas/python-pandas-seriesasfreq-method

在本教程中,我们将学习 PandasSeries.asfreq()的方法。此方法用于将时间序列转换为指定的频率。使用这种方法,我们可以填充任何缺失的值或空值。

下图显示了Series.asfreq()方法的语法。

句法

Series.asfreq(freq, method=None, how=None, normalize=False, fill_value=None)

参数

freq: 表示日期偏移量或字符串。它是频率 DateOffset 或字符串。

方法:包括“回填”/“填充”/“填充”,默认值为“无”。它表示用于填充重新索引系列中的孔的方法。

如何:表示‘开始’、‘结束’,默认为结束。

归一化:表示布尔(真或假),默认值为假。它指示是否将输出索引重置为午夜。

fill_value: 是标量,可选。它是用于缺失值的值,在上采样期间应用。

示例:使用Series.asfreq()方法转换时间序列

让我们创建一个时间序列,并使用Series.asfreq()方法将其转换为指定的频率。在这个例子中,我们将时间序列转换为“小时”。见下面的例子。

import pandas as pd
index = pd.date_range('1/4/2021', periods=4, freq='T')
series = pd.Series([1.0, None, None, 3.0], index=index)
print("--------The Series is-------")
print(series)
print("-----------After converting the Timeseries-----------")
print(series.asfreq(freq='H'))

-系列为- 2021-01-04 00:00:00 1.0 2021-01-04 00:01:00 NaN 2021-01-04 00:02:00 NaN 2021-01-04 00:03:00 3.0 Freq:T,dtype: float64 -转换时间系列后-

示例:使用 Series.asfreq()方法对时间序列进行上采样

在本例中,我们将时间序列上采样为“40”,并用标量“5.0”填充缺失的值。见下面的例子。

Series.asfreq()方法中的 fill_value 参数不会填充已经存在的缺失值。

import pandas as pd
index = pd.date_range('1/4/2021', periods=4, freq='T')
series = pd.Series([1.0, None, None, 3.0], index=index)
print("--------The Series is-------")
print(series)
print("-----------upsample Timeseries and fill value-----------")
print(series.asfreq(freq='40s',fill_value=5.0))

-系列为- 2021-01-04 00:00:00 1.0 2021-01-04 00:01:00 NaN 2021-01-04 00:02:00 NaN 2021-01-04 00:03:00 3.0 Freq:T,dtype: float64 -上采样时间系列和填充值

示例:使用bfill方法对时间序列进行上采样

这里,在这个例子中,我们使用'bfill'方法填充缺失的值,该方法向后填充时间序列中存在的空值。见下面的例子。

import pandas as pd
index = pd.date_range('1/4/2021', periods=4, freq='T')
series = pd.Series([1.0, None, None, 3.0], index=index)
print("-----------upsample Timeseries-----------")
print(series.asfreq(freq='70s'))
print("-----------backward fill-------")
print(series.asfreq(freq='70s',method='bfill'))

-上采样时间序列- 2021-01-04 00:00:00 1.0 2021-01-04 00:01:10 NaN 2021-01-04 00:02:20 NaN Freq:70S,dtype: float64 -后向填充- 2021-01-04 00:00:00 1.0 【T7

结论

在本教程中,我们学习了 PythonPandasSeries.asfreq()方法。我们学习并理解了Series.asfreq()方法的语法和参数,通过将该方法应用于数据帧,我们通过将时间序列转换为指定频率、对频率进行上采样并填充缺失值来解决示例。