Error while calling a Python Module
조회 수: 6 (최근 30일)
이전 댓글 표시
The Setup: I have a deep net model trained in python (using keras and tensorflow packages). I saved the model file as a json file and weights in h5 format. I wrote a simple Python script that takes two arrays as input, runs the learned model and returns a prediction. My main file in matlab is providing the inputs to the python file, calling it to return a prediction, and then continues to do further computation on it.
The Problem: Everytime I call the python module from matlab, I get the following error: "Python Error: AttributeError: 'array.array' object has no attribute 'reshape'" My model in python requires a 4D array. Since I figured earlier, the hard way, that one can't pass a multi-dimensional array from matlab to python, I'm passing a 1D array to python and doing the necessary conversion there itself. While, the error says I can't reshape, when I run the same commands through the python interpreter, they work.
Any help to resolve this is much appreciated. Thanks!
댓글 수: 2
Robert Snoeberger
2017년 2월 10일
편집: Robert Snoeberger
2017년 2월 10일
To respond to your comment "when I run the same commands through the python interpreter, they work", the following is a way to hit the same error with the python interpreter.
>>> import array
>>> a = array.array('d', range(20))
>>> a.reshape((2,10))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'array.array' object has no attribute 'reshape'
>>>
Maybe a solution for the above will fix your issue.
답변 (0개)
참고 항목
카테고리
Help Center 및 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!