현재 코드를 프로파일 링 한 후, numpy array reversion의 반복 작업은 실행 시간의 큰 덩어리를 믿었습니다. 내가 지금 가지고있는 것은 일반적인보기 기반 방법입니다.
reversed_arr = arr[::-1]
더 효율적으로 수행 할 수있는 다른 방법이 있습니까, 아니면 비현실적 인 numpy 성능에 대한 집착에서 온 환상입니까?
arr
는 numpy 배열입니다.
f2py
당신의 친구입니다! 다른 언어로 알고리즘의 성능 핵심 부분 (특히 과학 컴퓨팅에서)을 작성하고 파이썬에서 호출하는 것이 종종 가치가 있습니다. 행운을 빕니다!
arr[::-1]
: github.com/numpy/numpy/blob/master/numpy/lib/twodim_base.py가 . 를 검색하십시오 def flipud
. 기능은 문자 그대로 4 줄입니다.
arr[::-1]
그냥 반전보기를 반환합니다. 가능한 한 빠르며 보폭을 변경하기 때문에 배열의 항목 수에 의존하지 않습니다. 실제로 당신이 numpy 배열을 반전시키는 것입니까?