python调用matlab引擎实现MDS

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


 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值