动力系统的非线性测度(基于一维时间序列)

nolds的Python项目详细描述


nolds是一个基于numpy的小库,它为基于一维时间序列的动态系统的非线性度量提供了实现和学习资源。 目前正在实施以下措施:

样本熵sampen
基于近似熵
度量时间序列的复杂性
相关维度corr_dim
>时间序列的{{EM1} $分形维数的度量,也与复杂性有关。< /dD>
lyapunov指数lyap_rlyap_e
正lyapunov指数表示混沌和不可预测性。 nolds提供了rosenstein等人的算法。(lyap_r)估计最大lyapunov指数和eckmann等人的算法。(lyap_e)估计lyapunov指数的整个谱。
hurst指数hurst_rs
赫斯特指数是时间序列“长期记忆”的量度。 它可以用来确定如果时间序列在前面的步骤中增加了,那么时间序列增加的可能性是多是少,还是相等。 这个属性使得赫斯特指数对于股票数据的分析特别有趣。
detrended波动分析(dfa)dfa
dfa测量hurst参数{em1}$h,这与hurst指数非常相似。 主要区别在于DFA可用于非平稳过程(其平均值和/或方差随时间变化)。

示例

import nolds
import numpy as np

rwalk = np.cumsum(np.random.random(1000))
h = nolds.dfa(rwalk)

要求

nolds从一个代码源支持python 2(>;=2.7)和3(>;=3.4)。它需要包numpy

这些是唯一的硬性要求,但有些功能需要其他软件包:

  • 如果要使用ransac算法进行线拟合,还需要包sklearn
  • 对于由nolds.qrandom生成的真正随机数,您需要包quantumrandom
  • nolds.examples中的绘图函数需要包matplotlib

安装

nold可通过pypi获得,并可使用pip安装:

pip install nolds

您可以使用以下命令运行一些示例代码来测试安装:

python -m nolds.examples lyapunov-logistic

或者,如果没有安装matplotlib,则可以使用以下命令运行unittests:

python -m unittest nolds.test_measures

文档

nolds是为上述措施设计的学习资源。 因此,相应的功能具有广泛的文档,不仅解释了界面,还使用了算法,并指出用户额外的参考代码和论文。 文档可以在代码中找到,但也可以作为HTML-VersionRead the Docs使用。

相关度量可以在文件nolds/measures.py中找到。

联系信息

如果你有任何问题,建议或更正,你可以找到我的联系人 关于我的blog的信息。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
单击搜索按钮后,不会填充java JList   JavaSpring请求映射antmatcher忽略URL   国际化为什么java语言环境是最终的?   java文本区域的swing错误   docker FnProject java函数,其依赖项托管在私有存储库中   使用Java/Scala标记为HTML   多线程中的Java调用子类方法   java在查找字符串中第一个非重复字符时计算字符值   java在spring安全性中autoconfig=true有什么用途   如何为Kotlin扩展函数的接收者添加KDoc注释(Java中的第一个参数,`this`在Kotlin中)   java注释节点JaxB编组   java我一直得到这个异常错误空指针异常我如何停止这个错误并得到一个工作错误   Java中的python乘法字符串   用java将英语翻译成本地语言   java如何构建自己的传输级协议?   Java全局变量之类的