Python数据分析:时间序列分析——实际操作(一)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_43679030/article/details/86501310

1.我们在引入库的时候,还需要用import datetime as dt引入datetime库,因为后面的操作很多都和日期有关,很有可能会用到和datetime有关的函数。

2.date_range():可以指定开始时间与周期

  • H:小时
  • D:天
  • M:月

3.pd.date_range("Y-M-D",periods=t,freq="kD"):生成开始时间为Y-M-D,周期为k天的t个日期,D也可以换成其他表示时间的字母。
在这里插入图片描述

4.pd.Series(np.random.randn(n),index=pd.date_range(dt.datetime(Y,M,D),periods=t)):生成以时间为索引的n个随机数。在这里插入图片描述
除了可以进行索引,我们还可以对日期进行切片操作从而得到数据。在这里插入图片描述
5.truncate():过滤操作,参数可以为before=after=,过滤掉参数所指定的日期之前或之后的数据,不包括参数内指定的数据。在这里插入图片描述
6.pd.Timestamp():指定时间戳。

7.pd.Timedelta("n days"):指定时间偏移量。在这里插入图片描述
8.时间戳和时间区间还可以指定更多的细节。在这里插入图片描述
在这里插入图片描述
9.resample():数据重采样函数,可以后接一个函数求数据的统计量。在这里插入图片描述在这里插入图片描述
10.由于在升采样的过程中会出现空值,所以需要进行插值以填补空缺。

  • ffill(n):填充从前往后的n个空值,空值取前面的值。
  • bfill(n):填充从前往后的n个空值,空值取后面的值。
  • interpolate():线性取值。在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

11.df.rolling(window = n):指定以n为周期的滑动窗口,所谓滑动窗口就是缩小数据所在的区间进而求得更为精确的统计量。在这里插入图片描述
12.可以根据均值绘制出一个较为平稳的时间序列图像。

import pandas as pd
import numpy as np
import datetime as dt
import matplotlib.pyplot as plt
import matplotlib as mpl
import seaborn as sns
df_time = pd.Series(np.random.randn(600),index=pd.date_range("2018-1-1",periods=600,freq="D"))
r = df_time.rolling(window=10)
mean_r = df_time.rolling(window=10).mean()
fig = plt.figure(figsize=(15,5))
df_time.plot(style="c-.")
mean_r.plot(style="r-")

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_43679030/article/details/86501310