Using Matlab in Python

7 次查看(过去 30 天)
Hello,
I'm trying to execute matlab functions in python using the Matlab python package. However, when running an example from the documentation, I am getting an error message. When I run the code:
import matlab
import matlab.engine
eng = matlab.engine.start_matlab()
a = matlab.double([1,4,9,16,25])
b = eng.sqrt(a)
print(b)
I get the error message:
File "<ipython-input-7-6ccc095b323c>", line 1, in <module>
runfile('/Users/rach/Google Drive/PHD/Programming/Winds/Trying.py', wdir='/Users/rach/Google Drive/PHD/Programming/Winds')
File "//anaconda/envs/netcdf/lib/python2.7/site-packages/spyder/utils/site/sitecustomize.py", line 866, in runfile
execfile(filename, namespace)
File "//anaconda/envs/netcdf/lib/python2.7/site-packages/spyder/utils/site/sitecustomize.py", line 94, in execfile
builtins.execfile(filename, *where)
File "/Users/rach/Google Drive/PHD/Programming/Winds/Trying.py", line 4, in <module>
a = matlab.double([1,4,9,16,25])
File "//anaconda/envs/netcdf/lib/python2.7/site-packages/matlab/mlarray.py", line 51, in __init__
raise ex
TypeError: 'NoneType' object is not callable
What does this error mean? Is it something to do with how I have installed everything?
Thanks, Rachael

采纳的回答

Nagarjuna Manchineni
Looking at the error message, I can see that you are using the python from the Anaconda distribution. This version of Python is not supported with MATLAB. CPython is the recommended Python distribution for use with MATLAB Engine for Python, as noted at the following links:
I believe once you install the correct version you will not encounter the same issue.
  3 个评论
Juan Salcedo
Juan Salcedo 2019-12-18
Can you elaborate. I am also using the Anaconda thing and want to run Matlab commands

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Call MATLAB from Python 的更多信息

标签

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by