一个Python软件包,用于构建简化的有序模型来插值单变量数据。

romspline的Python项目详细描述


githubPyPI versionarXiv:1611.07529license

欢迎使用romSpline

romSpline是一个易于使用的Python代码,用于使用降阶建模和统计学习方法压缩和插值一维数据。在

romSpline使用贪婪算法寻找一个近似最优的数据样本子集,通过一元样条插值将原始数据恢复到要求的公差。输出是数据的最优子集和相应的降阶样条插值。在

romSpline还包含代码来估计由于插值而产生的新样本的预测误差。这些方法主要基于蒙特卡罗K-折叠交叉验证研究。验证误差的平均值可作为插值误差的全局有效上界。在

这段代码对于大数据数组的下采样或压缩是有用的,从中可以构造原始信息和通过插值预测新数据。对于相对平滑的数据,下采样的程度可能非常重要(例如,数量级)。此外,所得到的简化数据集的分布为数据的特征和结构提供了信息,否则可能不容易观察到。在

romSpline的未来版本将提供基于更精确的交叉验证研究的局部自适应插值误差估计。此外,对贪心算法的增强将包含有关数据质量的可能的附加信息(例如压缩和插值的数据值中的不确定性,如果可用)。在

如果您将此代码用于学术工作,请引用以下描述方法和算法的论文:

  • C、 R.Galley和P.Schmidt, “通过降阶样条插值快速有效地评估重力波形” arXiv:1611.07529

安装

romspline可通过PyPI获得:

pip install romspline

来源

^{pr2}$

如果您没有根权限,请将最后一步替换为 python setup.py install --user。而不是使用setup.py 手动地,您也可以用pip install .pip install --user .。在

或者,您可以下载或克隆此存储库并添加 下载PYTHONPATH变量的路径。在

另一种选择是,在Python代码中包含以下行:

import sys
sys.path.append(<path to romspline>)
import romspline

依赖性

所有这些都可以通过pip或conda安装。在

romSpline需要NumPy、SciPy和H5py,这是大多数Python发行版附带的。对于并行化,这是有用的,但不是某些交叉验证例程所必需的,romSpline当前使用同期期货模块。如果您使用的是Python2并且没有同期期货已安装您可以使用pip安装:

pip install futures

以后的romSpline版本将不再使用同期期货. 在

入门

请参阅随附的IPython笔记本(romSpline_示例.ipynb和错误_示例.ipynb)关于使用代码和估算的简单教程 降阶样条插值预测新值的误差。在

作者信息

版权所有(C)2015 Chad Galley(crgalley”at“tapir”dot“caltech”dot“edu)。 根据MIT/X联盟许可发布。 欢迎提出意见和要求。在

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

推荐PyPI第三方库


热门话题
带Maven的Eclipse Java存储库:缺少工件:compile   java如何以编程方式停止RMI服务器并通知所有客户端   java Roboguice抛出ClassNotFoundException:AnnotationDatabaseImpl   java为什么lucene 4.0删除IndexWriter类的两个构造函数?   nls如何避免java项目上不需要的日志消息?   测试无法在Selenium Webdriver(java)中定位iframe   使用XML的java servlet   java如何使用jxl用****屏蔽单元格   java使用SQLite从数据库中选择“没有这样的列”   导入扫描程序后出现java编译错误   插入查询的java空指针异常   使用创建PostgreSQL数据库。Java应用中的sql脚本   java使用jsoup将HTML解析为格式化的明文