Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私はnumpy配列を持っています。要素の連続するすべてのトリプレットの平均である新しい配列を作成したいと考えています。したがって、新しい配列は元のサイズの 3 分の 1 になります。
例として:
np.array([1,2,3,1,2,3,1,2,3])
配列を返す必要があります:
np.array([2,2,2])
誰でもこれを行う効率的な方法を提案できますか? 空白を描いています。
配列arrの長さが 3 で割り切れる場合:
arr
np.mean(arr.reshape(-1, 3), axis=1)
より高い次元の配列に再形成してから、追加の次元の 1 つで何らかの形式の縮小操作を実行することは、numpy プログラミングの定番です。
受け入れられた回答を各列/機能の 2D 配列に適用するには:
arr.reshape(-1, downsample_ratio, arr.shape[1]).mean(axis = 1)