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

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也可以换成其他表示时间的字母。
Python数据分析:时间序列分析——实际操作(一)_第1张图片

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

7.pd.Timedelta("n days"):指定时间偏移量。Python数据分析:时间序列分析——实际操作(一)_第4张图片
8.时间戳和时间区间还可以指定更多的细节。Python数据分析:时间序列分析——实际操作(一)_第5张图片
Python数据分析:时间序列分析——实际操作(一)_第6张图片
9.resample():数据重采样函数,可以后接一个函数求数据的统计量。Python数据分析:时间序列分析——实际操作(一)_第7张图片Python数据分析:时间序列分析——实际操作(一)_第8张图片
10.由于在升采样的过程中会出现空值,所以需要进行插值以填补空缺。

  • ffill(n):填充从前往后的n个空值,空值取前面的值。
  • bfill(n):填充从前往后的n个空值,空值取后面的值。
  • interpolate():线性取值。在这里插入图片描述在这里插入图片描述在这里插入图片描述Python数据分析:时间序列分析——实际操作(一)_第9张图片

11.df.rolling(window = n):指定以n为周期的滑动窗口,所谓滑动窗口就是缩小数据所在的区间进而求得更为精确的统计量。Python数据分析:时间序列分析——实际操作(一)_第10张图片
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-")

Python数据分析:时间序列分析——实际操作(一)_第11张图片

你可能感兴趣的:(数据分析,数学建模,python数据分析)