python调用matlab引擎实现MDS
2017-08-07 16:42
1061 查看
Pyhton & matlab: MDS TEST
1 安装matlab.engine
2 创建.m文件
a)创建mdsTest.m文件
b)文件内容
functiona = mdsTest(distance)
a =mdscale(distance, 2, 'criterion','metricsstress');
c)说明
必须以函数的形式,python代码才能得到返回值,其它为控制参数。
mdscale是求MDS的函数,输入distance为距离矩阵。
3 将.m文件放在matlab默认工作目录中。关于如何修改matlab默认目录,百度。
4 在python中调用mdsTest方法
a)引用相关包
import matlab.engine;
b)关键python代码
1. distance = [[0,2,3],[2,0,1],[3,1,0]]
2. distance =matlab.double(distance)
3. eng =matlab.engine.start_matlab()
4. ret =eng.mdsdistance(distance)
c)说明
matlab.double()在python创建matlab数组(详情:http://www.cnblogs.com/McKean/p/6390370.html)。如果不做转换,可能会出现类型错误。
eng = matlab.engine.start_matlab()。打开matlab引擎。
ret返回值类型为matlab数组类型。
5 说明
Matlab官网原文原文在:http://cn.mathworks.com/help/matlab/matlab-engine-for-python.html
1 安装matlab.engine
2 创建.m文件
a)创建mdsTest.m文件
b)文件内容
functiona = mdsTest(distance)
a =mdscale(distance, 2, 'criterion','metricsstress');
c)说明
必须以函数的形式,python代码才能得到返回值,其它为控制参数。
mdscale是求MDS的函数,输入distance为距离矩阵。
3 将.m文件放在matlab默认工作目录中。关于如何修改matlab默认目录,百度。
4 在python中调用mdsTest方法
a)引用相关包
import matlab.engine;
b)关键python代码
1. distance = [[0,2,3],[2,0,1],[3,1,0]]
2. distance =matlab.double(distance)
3. eng =matlab.engine.start_matlab()
4. ret =eng.mdsdistance(distance)
c)说明
matlab.double()在python创建matlab数组(详情:http://www.cnblogs.com/McKean/p/6390370.html)。如果不做转换,可能会出现类型错误。
eng = matlab.engine.start_matlab()。打开matlab引擎。
ret返回值类型为matlab数组类型。
5 说明
Matlab官网原文原文在:http://cn.mathworks.com/help/matlab/matlab-engine-for-python.html
相关文章推荐
- 实现python调用Matlab的.m文件
- Python调用Matlab引擎
- 实现python调用Matlab的.m文件
- Python调用Matlab2014b引擎
- Python调用MatLab引擎
- VS2017调用Matlab引擎及Python环境遇到的几个问题
- Windows下 使用Python 3 调用讯飞 TTS 引擎实现文本转语音
- Go语言调用python调用matlab,实现matlab并行运行
- 实现python调用Matlab的.m文件
- 实现python调用Matlab的.m文件
- 实现python调用Matlab的.m文件
- 实现python调用Matlab的.m文件
- 实现python调用Matlab的.m文件
- Python调用Matlab实现混合编程
- 在外部调用Matlab引擎实现数学计算
- 实现python调用Matlab的.m文件
- 实现python调用Matlab的.m文件
- Linux下c++调用自己编写的matlab函数:通过matlab引擎实现
- 实现python调用Matlab的.m文件
- Visual C++调用Matlab引擎