I have this code in MATLAB (attached below) and wondered how I'd go about converting it to Python seeing as it keeps giving me an error "TypeError: only integer scalar arrays can be converted to a scalar index"
l0= -200
l0 = -200
hi = 20
hi = 20
x = ones(27000, 1);
udata = ones(27000, 10);
x1 = x((x>lo)&(x<hi));
Unrecognized function or variable 'lo'.
u1 = udata((x>lo)&(x<hi), :);

 채택된 답변

Chris
Chris 2023년 1월 28일
편집: Chris 2023년 1월 28일

0 개 추천

Here's a demonstration.
import numpy as np
lo = -200
hi = 20
x = np.ones((27000,1))
udata = np.ones((27000,10))
columnMask = (x>lo)&(x<hi)
cn = columnMask.nonzero()[0]
u1 = udata[cn,:]

추가 답변 (1개)

sam
sam 2023년 4월 17일

0 개 추천

This error message suggests that a function or operation is expecting an integer scalar index (single integer) as an index, but is instead receiving an array or a non-integer value. This can occur when attempting to index or slice an array with a non-integer or non-scalar value. To resolve this error, ensure that the index being used is a single integer and not an array or non-integer value. If working with arrays, consider using integer indexing or slicing methods to access specific elements or subsets of the array.

카테고리

도움말 센터 및 File Exchange에서 Call Python from MATLAB에 대해 자세히 알아보기

제품

릴리스

R2022b

태그

질문:

2023년 1월 28일

답변:

sam
2023년 4월 17일

Community Treasure Hunt

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

Start Hunting!

Translated by