Getting error while importing numpy in MATLAB

I have installed a MATLAB supported version python 3.5. I have also installed numpy library and it can be imported in python compiler. But when I try a numpy code in MATLAB it gives error like this
x=py.numpy.linspace(0,10,101);
it gives following error which I am unable to understand.
Error using function_base>linspace (line 121)
Python Error: TypeError: object of type <class 'float'> cannot be safely interpreted as an integer.
Error in <__array_function__ internals>>linspace (line 6)
I need help to resolve this issue as I need to use python comands in MATLAB.

 采纳的回答

This issue happens in the latest versions of numpy. Following will work
x = py.numpy.linspace(0, 10, py.numpy.int(101))

6 个评论

What I have to do if I need to change whole project from python to MATLAB code?
You need to write the MATLAB code manually. I don't think there is an automatic tool to do this.
x = py.numpy.linspace(0, 10, py.numpy.int(101))
Above command gives output as ndarray. How can I change it into double. y=double(x) is not working.
Error using double
Conversion to double from py.numpy.ndarray is not possible.
Which python version are you using? Maybe try this
x = py.numpy.linspace(0, 10, py.numpy.int(101))
y = x.double
y=x.double; is not working. I am using python 3.5
y=x.double gives following error,
No appropriate method, property, or field 'double' for class 'py.numpy.ndarray'.
i am not getting these errors. I am using python 3.8 with numpy 1.18.5.

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Call Python from MATLAB 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by