Convert Python list Type to MATLAB double

88 visualizzazioni (ultimi 30 giorni)
SAI KRISHNA CHADA
SAI KRISHNA CHADA il 2 Dic 2021
Commentato: Sean de Wolski il 18 Lug 2022
Hello All,
I would like to convert the python list type to matlab double.
I have tried the following,
First approach
out = func.getValues() %python function gives a list of [1,2,...n]
out = cell(out(1:end-1));
out = cellfun(@double,out); %outputs type double
Second approach
out = func.getValues() %python function gives a list of [1,2,...n]
out = func.convlisttoarray(out) %python function imports numpy and converts list to array using numpy.array()
out_double = double(out); % outputs type double
Although the length of the list is 1x150, in both the approaches, Matlab is taking a lot of computation time and the system hangs for a while. This is wierd to me, as a couple of days earlier everything worked fine and it could solve the problem in milli seconds.
Could anyone of you please help me with a faster approach to convert the python list to matlab double?
I am using Matlab 2019b.
Thank you in advance.
Cheers,
Sai Krishna

Risposte (1)

Sean de Wolski
Sean de Wolski il 2 Dic 2021
q = py.list({1,2,3})
q =
Python list with no properties. [1.0, 2.0, 3.0]
cq = cell(q)
cq = 1×3 cell array
{[1]} {[2]} {[3]}
[cq{:}]
ans = 1×3
1 2 3
  2 Commenti
Pol Adillon
Pol Adillon il 16 Lug 2022
Where does "py." come from?
I get a Not defined Error
Sean de Wolski
Sean de Wolski il 18 Lug 2022
Do you have python installed and configured? I.e. what's the output of
pyenv
ans =
PythonEnvironment with properties: Version: "2.7" Executable: "/usr/bin/python" Library: "libpython2.7.so.1.0" Home: "/usr" Status: NotLoaded ExecutionMode: InProcess
It should not be empty.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by