时间序列中的统计学特征(保持更新)

记时间序列为 X=\{x_1, x_2, …, x_n \}

  • 均值 np.mean(x)

u=\frac{\sum x_i}{n}

  • 标准差 np.std(x)

\sigma=\sqrt\frac{\sum (x_i-u)^2}{n-1}

  • K阶中心矩

u_k=\frac{\sum (x_i-u)^k}{n}

def moment_k(seq, k):
    mean = seq.mean()
    moment_k = np.mean((seq-mean)**k)
    return moment_k
  • 偏度 skewness

u=\frac{u_3}{\sigma^3}

  • 峰度 skewness

u=\frac{u_4}{\sigma^4}-3

  • 斜率 trend

拟合一条最优的直线,用斜率表示数据的发展趋势

from scipy.stats import linregress
def trend(seq):
    idx = np.array(range(len(seq)))
    slope =  linregress(idx, seq.squeeze())[0]
    return slope
  • 波峰波谷统计

统计序列中波峰波谷的个数,一定程度上可以表示序列波动的频率

def wave(seq):
    count = 0
    res = seq[1:]-seq[:-1]
    count = np.sum(res[:-1]*res[1:] < 0)

    return count
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 介绍 NumPy是Python数值计算最重要的基础包,大多数提供科学计算的包都是用NumPy的数组作为构建基础。N...
    无味之味阅读 7,941评论 0 3
  • 它背对着你 你说它孤傲,因为它不拿正眼瞧你 你说它卑微,因为它不抬头仰望你 你说它满身锋芒,没错,它就是不让你接近...
    巍翎阅读 597评论 4 8
  • 我是一颗草 厌倦极了 地下的虫子啃食我的根茎 厌倦极了 地上的生物践踏我的身体 多想像风一样走的坦荡 但我留恋这土...
    Lany被人注册了阅读 402评论 0 3
  • 昨天和朋友约着去看舞台剧,结束的时间比我们想象的晚。我有些格外的饿的慌,地铁运行时间却已将近末班。权衡之下,我任性...
    荷兰兔Purity阅读 1,959评论 1 3