이 질문은 기본적인 질문이며 아마도 전에 답변을 받았을 것입니다.하지만 물어보고 싶은 동안은 정확한 해결책을 찾지 못했습니다.추가 된 목록을 사용하여 np.where에서 유형 오류가 발생했습니다.
경과 된 시간을 사인파로 변환 한 다음 플롯하는 루프를 만들고 있습니다. 나는이 부분에 아무런 문제가 없지만, 나는 약간의 분석에 어려움을 겪고있다.
import time
import numpy as np
x = []
y = []
start = time.time()
for times in range(100):
stop = time.time()
duration = stop-start
x.append(duration)
y.append(np.sin(duration))
time.sleep(0.05)
이 모두 잘 작동하고 필요에 따라 그래프를 생성
그러나 나는 다음np.where
명령을 사용하여 찾고 있으며 오류 반환 :
print(y[np.where(y > 0)])
TypeError: unorderable types: list() > int()
은 무엇 저를 혼동하는 것은 무엇입니다 time.time()
type(y[0])
을 호출하면 numpy.float
정의를 제공하는 값을 반환합니다. 필자는 일부 기능을 잘못 호출하거나 내 목록 정의에 잘못된 것을 수행해야한다는 것을 이해합니다! 마치 간단한 int
행렬을 사용하는 것처럼 모든 것이 올바르게 작동합니다. 모든 좋은, 그래서 나는 TypeError
내 목록 정의에 잘못 갔어요 곳 난 그냥 궁금 해서요
a = np.arange(0,100,2)
print(a[np.where(a > 80)])
[82 84 86 88 90 92 94 96 98]
.
미리 환호하십시오!
'np.array (x)'를 사용하여'x'리스트를'numpy' 배열로 변환하려고 시도 했습니까? 같은 오류가 발생합니까? –
그게 고칠 수있어, 많이 고마워. 그 변화와 그 기능이 어떻게 작동하는지를 나에게 설명해 주시겠습니까? 건배. – Wrothschild
Numpy는 기본 연산자의 평등, 비교 등을 오버라이드합니다.이 경우'> '연산자를 호출하는 것은 [numpy.greater] (https://docs.scipy.org/doc/numpy-1.13.0/reference)를 호출하는 것과 같습니다. /generated/numpy.greater.html). –