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()
方法的语法和参数,通过将该方法应用于数据帧,我们通过将时间序列转换为指定频率、对频率进行上采样并填充缺失值来解决示例。