MATLAB 데이터를 Python에 전달하기
MATLAB®에서 Python® 함수를 호출할 경우 MATLAB의 Python 인터페이스는 MATLAB 데이터를 Python 언어에서 가장 잘 나타낼 수 있는 유형으로 변환합니다. MATLAB에서의 Python 데이터 사용에 대한 자세한 내용은 Python 함수에서 반환된 데이터 처리하기 항목을 참조하십시오.
Python에 MATLAB 스칼라 데이터 전달하기
MATLAB에서, 스칼라 데이터를 MATLAB에서 Python 함수로 전달할 경우 Python 인터페이스가 데이터를 그에 해당하는 Python 데이터형으로 변환합니다.
MATLAB 입력 인수 유형 — | 결과 Python | 예제 |
|---|---|---|
|
| MATLAB에서 Python 숫자형 변수 사용하기 |
|
| z = complex(1,2); py.cmath.polar(z) ans =
Python tuple with values:
(2.23606797749979, 1.1071487177940904)
|
|
| - |
|
| - |
|
| - |
|
| - |
|
| MATLAB에서 Python str 변수 사용하기 |
|
| py.list({string(missing),"Value"})ans =
Python list with values:
[None, 'Value']
|
|
| - |
|
| MATLAB에서 Python 딕셔너리 사용하기 |
|
| MATLAB에서 Python 딕셔너리 사용하기 |
table | py.pandas.DataFrame | Use Python Pandas DataFrames in MATLAB |
timetable | py.pandas.DataFrame | Use Python Pandas DataFrames in MATLAB |
datetime |
| Python에서 MATLAB datetime형 사용하기 |
duration |
| Use MATLAB Duration Types with Python |
Python 객체 — |
| - |
Python 함수에 대한 함수 핸들 |
| Pass Python Function to Python map Function |
Python에 MATLAB 배열 데이터 전달하기
MATLAB에서, MATLAB 배열을 Python 함수에 대한 입력값으로 전달하고 Python 환경에서 NumPy 모듈이 사용 가능한 경우, Python 인터페이스는 배열을 Python NumPy 배열로 자동으로 변환합니다. MATLAB 배열을 Python 함수에 대한 입력값으로 전달할 때 NumPy 모듈을 사용할 수 없다면 Python 인터페이스는 행렬 입력값을 처리하는 방식으로 벡터 입력값도 처리합니다. Python 인터페이스는 이러한 입력값을 Python memoryview 객체로 변환합니다. (R2025a 이후)
R2025a 이전: NumPy 패키지를 사용하거나 사용하지 않고 MATLAB 벡터를 Python 함수에 전달하면 Python 인터페이스는 이 벡터를 Python array.array 객체로 변환합니다.
MATLAB 입력 배열 유형 | NumPy를 사용했을 때의 Python 유형 |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 이 변환은 지원되지 않습니다. |
Python 언어는 MATLAB 배열에 저장된 데이터 같은 메모리 버퍼에 액세스하기 위한 프로토콜을 제공합니다. NumPy가 설치되어 있지 않으면, Python 인터페이스는 데이터를 복사하지 않고 MATLAB과 동일한 프로세스에서 실행하여 MATLAB 배열을 Python 코드에서 바로 읽어 들일 수 있도록 MATLAB 배열에 대해 이 Python 버퍼 프로토콜을 구현합니다. 그런 다음 이 데이터 버퍼는 Python memoryview 객체로 변환됩니다. 다음 예시에서 Python 인터페이스는 MATLAB 배열 marr을 array.array 생성자에 전달하면서 배열 marr을 memoryview 객체로 변환합니다.
marr = [1,2,3];
pyarr = py.array.array('d',marr);
지원되지 않는 MATLAB 유형
다음 MATLAB 유형은 Python에서 지원되지 않습니다.
다차원
char배열 또는cell배열희소 배열
struct배열categoricalcontainers.MapMATLAB 객체
matlab.metadata.Class(py.class)