Python Pandas Series.asfreq()

Python Pandas Series.asfreq()

Pandas系列是一个带有轴标签的一维ndarray。标签不需要是唯一的,但必须是一个可散列的类型。该对象支持基于整数和标签的索引,并提供了大量的方法来执行涉及索引的操作。

Pandas Series.asfreq()函数用于将时间序列转换为指定频率。该函数还提供了填充方法,以填充/回填缺失的值。

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

Parameter :
freq : DateOffset对象,或字符串
method : {‘backfill’/’bfill’, ‘pad’/’ffill’}, 默认无
how: 仅对于PeriodIndex,见PeriodIndex.asfreq
normalize : 是否将输出指数重置为午夜时分
fill_value :用于缺失值的值。

返回:转换:与调用者的类型相同

示例#1:使用Series.asfreq()函数来改变给定系列对象的频率。

# importing pandas as pd
import pandas as pd
  
# Creating the Series
sr = pd.Series([11, 21, 8, 18, 65, 18, 32, 10, 5, 32, None])
  
# Create the Index
index_ = pd.date_range('2010-10-09 08:45', periods = 11, freq ='M')
  
# set the index
sr.index = index_
  
# Print the series
print(sr)

输出 :

2010-12-31 08:45:00     8
2011-01-31 08:45:00    18
2011-02-28 08:45:00    65
2011-03-31 08:45:00    18
2011-04-30 08:45:00    32
2011-05-31 08:45:00    10
2011-06-30 08:45:00     5
2011-07-31 08:45:00    32
2011-08-31 08:45:00   NaN
Freq: M, dtype: float64

现在我们将使用Series.asfreq()函数将给定系列对象的频率改为季度。

# change to quarterly frequency
result = sr.asfreq(freq = 'Q')
  
# Print the result
print(result)

输出 :

2010-12-31 08:45:00     8
2011-03-31 08:45:00    18
2011-06-30 08:45:00     5
Freq: Q-DEC, dtype: float64

正如我们在输出中看到的,Series.asfreq()函数已经成功地改变了给定系列对象的频率。

示例#2 :使用Series.asfreq()函数将给定系列对象的年度频率改为3年一批。

# importing pandas as pd
import pandas as pd
  
# Creating the Series
sr = pd.Series([11, 21, 8, 18, 65, 18, 32, 10, 5, 32, None])
  
# Create the Index
# apply yearly frequency
index_ = pd.date_range('2010-10-09 08:45', periods = 11, freq ='Y')
  
# set the index
sr.index = index_
  
# Print the series
print(sr)

输出 :

2010-12-31 08:45:00    11.0
2011-12-31 08:45:00    21.0
2012-12-31 08:45:00     8.0
2013-12-31 08:45:00    18.0
2014-12-31 08:45:00    65.0
2015-12-31 08:45:00    18.0
2016-12-31 08:45:00    32.0
2017-12-31 08:45:00    10.0
2018-12-31 08:45:00     5.0
2019-12-31 08:45:00    32.0
2020-12-31 08:45:00     NaN
Freq: A-DEC, dtype: float64

现在我们将使用Series.asfreq()函数来改变给定系列对象的年度频率为3年的批次。

# apply year batch frequency
result = sr.asfreq(freq = '3Y')
  
# Print the result
print(result)

输出 :

2010-12-31 08:45:00    11.0
2013-12-31 08:45:00    18.0
2016-12-31 08:45:00    32.0
2019-12-31 08:45:00    32.0
Freq: 3A-DEC, dtype: float64

正如我们在输出中看到的,Series.asfreq()函数已经成功地改变了给定系列对象的频率。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程