특정 크기의 목록 (또는 배열)에서 물어 뜯고 그 물린 평균을 반환하고 다음 물기로 넘어 가서 다시 해보고 싶습니다. for 루프를 작성하지 않고이를 수행 할 수있는 방법이 있습니까?특정 크기의 하위 섹션을 파이썬으로 평균 계산하는 방법은 무엇입니까?
In [1]: import numpy as np
In [2]: x = range(10)
In [3]: np.average(x[:4])
Out[3]: 1.5
In [4]: np.average(x[4:8])
Out[4]: 5.5
In [5]: np.average(x[8:])
Out[5]: 8.5
내가 np.average 같은 뭔가를 찾고 있어요 (X의 [: bitesize = 4])으로 돌아 가기 : [1.5,5.5,8.5].
배열을 잘라내어 스테핑하는 방법을 살펴 보았지만 일어날 일이있는 것을 발견하지 못했습니다.
왜 루프를 쓰고 싶지 않아? 사람들이 임의의 통제 구조없이 무언가를하려고 할 때 질문을하면 종종 "한 줄에 가능한 한 많이"사고 방식에 빠져 있다고 제안합니다. 당신이 걱정하고있는 성능이라면, 말하고, 당신이 다루는 데이터의 크기에 대한 예를 들어 사람들이 무엇을 테스트해야하는지 알게하십시오. –
for 루프를 작성할 수는 있지만, 예를 들어 배열을 단계별로 처리 할 수있을 때까지 루프에 대해 작성한 다른 많은 목록 또는 배열 조작과 동일한 느낌을주었습니다. 그래서 물었다. 또한 for 루프는 for 루프를 시작하고 if 문 (또는 두 개)을 실행하고 새 목록에 값을 추가하는 등의 새로운 목록을 선언했을 것입니다. 그래서 한 사람이 이미 대답 한 for 루프는 제게 분명하고 프로그래밍상의 의미에서 비극적이었습니다. – JBWhitmore