python->octave->python:对matlab/octave库进行pythonize的工具

pyop的Python项目详细描述


pyopy:python->octave/matlab->python
===



pyopy有助于使用python中的matlab/octave库。
它提供解析matlab代码的功能,并将对matlab函数的调用表示为对python函数的调用。它还提供了一种通用机制,可以将数据传输到
,并在octave/matlab实例中运行代码。pyopy生来就为
[hctsa时间序列特征提取库](http://www.comp-engine.org/time series/)提供python绑定。
您可以查看这个[快速演示](https://asciema.org/a/18771)。



雨衣。它需要Python2.7,Octave和/或Matlab以及以下Python依赖项:

-numpy
-scipy
-pandas
-joblib
-argh
-whatami
-lockfile

pyopy设计将命令调度和数据传输分离。
pyopy依赖于优秀的[oct2py](http://blink1073.github.io/oct2py/)
(其中pyopy提供了[稍微修改的版本](https://github.com/sdvillal/oct2py)。
用于一般数据传输。对于与octave的通信,我们建议完全安装oct2py。
对于与matlab的通信,我们建议使用python matlab引擎(从
2014b版开始,可用于matlab)。如果你有一个早期的Matlab版本,基于[PymatBridge](https://github.com/arokem/python-matlab-bridge)的速度较慢且测试较少的后端
也可用。

安装argh whatami lockfile
```

-要使用Matlab,请安装[Python Matlab引擎](http://www.mathWorks.com/help/Matlab/Matlab-External/install the Matlab engine for python.html)。

``sh
cd/opt/matlab/extern/engines/python如果在/opt/matlab中安装了Matlab
python setup.py install不幸的是,PIP在这里会失败
``````

pip install oct2py
```br/>
-pip install pyopy in your环境(即将发布)。

``sh
如果使用hctsa,也可以在任何位置安装开发版本的cd,对于hctsa,git clone https://github.com/strawlab/pyopy.git
pip install-e pyopy
`````

强烈建议使用Matlab。



倍频程。
每次调用"hctsa.prepare()"时,此版本的hctsa都将动态添加到Matlab/octave
路径中。



该命令还将重新生成python绑定。
这意味着重新生成模块:
"pyopy/hctsa/hctsa_bindings.py"
#请注意,要成功重新生成绑定,
"hctsa cli"需要对安装了
pyopy的目录具有写权限。
如果使用"pip install-e"或
如果安装到用户目录上的conda/virtualenv,则这不成问题。





引擎,运行:

hctsa cli install--engine octave

实现运行此命令:
hctsa cli install--engine all--force download--generate bindings
这应该可以工作

``sh
hctsa cli summary


operators(mfiles中的函数):164
操作数(函数+参数):1057
功能数(操作+输出值):7778
不操作的函数:['co_tstl_amutel','dn_cumulants',"dn_nlogl_norm"、"in_automutualinfo"、"in_initialize_mi"、"in_mutualinfo"、"mf_gp_learnhyperp"、"mf_residellanalysis"、"nl_caosmethod"、"pp_preprocess"、"sb_coarsegrain"、"sd_makeprogates"、"tstl_predict"]
没有函数的操作:["dk_theilerq"、"dk_crinkle_statistic"、"dk_timerev_1","dk_timerev_2","dk_timerev_3",'dk_timerev_4']
(这些可能是对其他工具箱的调用)
没有操作的特性:[]
(通常应该是空的)

ipython
`````

``python
in[1]:将numpy导入为np

in[2]:从pyopy.hctsa导入hctsa

in[3]::_=hctsa.prepare(engine='matlab')
启动发动机
预热
配置hctsa
设置hctsa操作员
万岁,我们现在可以使用hctsa…


in[4]:hctsa.operations.ac_1(np.arange(100))
out[4]:0.969999999999975
````


###与pyopy一起分发的代码

-pyopy本身:修改的bsd
-oct2py:修改的bsd
-ompc:修改的bsd


*脚本)。
"operators"是GPL授权的。pyopy绑定仅依赖于运算符。
hctsa的其他部分被授权为[知识共享属性非商业共享4.0国际许可证](https://creative commons.org/licenses/by nc sa/4.0/)。
hctsa(工具箱目录)使用的第三方代码中的其他许可证(主要是gpl)可能适用。< BR>

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

推荐PyPI第三方库


热门话题
java无法使用JSF访问托管bean方法   java是制作具有多值类型的HashMap的正确方法   javafx中TicTacToe的java更新UI   windows Java文件。getCanonicalFile()无法处理冒号“:”   java在一个布局屏幕中创建多个(26)按钮   java Android Studio:Gradle构建完成,有251个错误   我们如何在Java上为callfireapiclient编写单元/集成测试?   java无法将1715UTC转换为本地/gmt类型   具有已定义的数字序列的JAVA循环   Java程序正在netbeans中编译,但未在CMD中编译,包不存在   java Android构造函数和onCreate()之间有什么区别?   java配置弹性搜索结果评分   java LibGDX纹理是否可绘制?   java如何在Android中设置应用程序默认打开pdf   java是否有一种创造性的方法将多个参数传递给contentEquals()方法?   java在Android上存储Ed25519私钥