関数がベクトル化されて出力が配列の平均値をとるようにする方法はありますか?各平均値は入力配列の0からの値の平均を表しますか?これをループすることはかなり簡単ですが、私はできるだけ効率的にしようとしています。例えば0 = 0、1 =平均値(0-1)、N =平均値(0-N)配列のスライス全体でnumpy平均をベクトル化する
1
A
答えて
3
をcumulative averaging
とすることができます。したがって、明白な解決策は、cumulative summation
を含み、これらの合計を、そのような合計に関与する要素の数で除算することです。このように、ベクトル化実装がnp.cumsum
を伴うだろうし、そのようにように、ndarrayためnp.arange
を得て、一般化することができ、参加要素の数で割る - あなたはpandas
を使用することができるしている場合は
def cummean(A,axis):
""" Cumulative averaging
Parameters
----------
A : input ndarray
axis : axis along which operation is to be performed
Output
------
Output : Cumulative averages along the specified axis of input ndarray
"""
return np.true_divide(A.cumsum(axis),np.arange(1,A.shape[axis]+1))
2
がexpanding_mean
ありこれはnumpyの配列を直接操作します:
In [10]: pandas.expanding_mean(np.arange(1, 11))
Out[10]: array([ 1. , 1.5, 2. , 2.5, 3. , 3.5, 4. , 4.5, 5. , 5.5])
この方法はまた、列ごとに動作します:
In [11]: A = np.array([[1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]).T
In [12]: A
Out[12]:
array([[ 1, 1],
[ 2, 1],
[ 3, 1],
[ 4, 1],
[ 5, 1],
[ 6, 1],
[ 7, 1],
[ 8, 1],
[ 9, 1],
[10, 1]])
In [13]: pandas.expanding_mean(A)
Out[13]:
array([[ 1. , 1. ],
[ 1.5, 1. ],
[ 2. , 1. ],
[ 2.5, 1. ],
[ 3. , 1. ],
[ 3.5, 1. ],
[ 4. , 1. ],
[ 4.5, 1. ],
[ 5. , 1. ],
[ 5.5, 1. ]])
関連する問題
- 1. numpyで配列のサブセットを平均化する
- 2. numpy/scipyのベクトル化インデックス/スライス?
- 3. 2D numpy配列を平均でグループ化する
- 4. スライスを変化させた2d numpy以上の平均値
- 5. numpy配列のn要素ごとに平均化する
- 6. ウィンドウ全体のビン平均平均値
- 7. 多次元配列のnumpy平均
- 8. numpy配列の平均ピクセル減算
- 9. numpy配列を平滑化
- 10. numpy配列の列の平均を取る
- 11. numpy配列の複数軸の平均を取得する
- 12. numpyのない配列のn要素ごとに平均化する
- 13. 非スライスnumpyの配列
- 14. Numpy ndarrayが配列でスライスする
- 15. Numpy - 配列から2次元の行または列ベクトルをスライスする
- 16. numpyの配列の平均がNaNを返す
- 17. 3次元配列を平均化
- 18. Rの全体平均を含むグループ化されたggplot2
- 19. numpyで配列をスライスしますか?
- 20. オブジェクトデータをアクセスするnumpy配列をスライス
- 21. 辞書内の全項目を平均化し、キーで平均する方法
- 22. TensorFlowは、ミニブッチ勾配を平均して平均化する
- 23. Numpyのベクトルから行列のスライスを作成する
- 24. ベクトル平均のRcpp
- 25. 3DギザギザのNumPy配列の2D平均の計算
- 26. ネイティブなnumpyの並列化 - 乗算と和/平均
- 27. Pythonの大NumPy配列の最小、最大、平均
- 28. Numpy - 列間の平均距離
- 29. ピボットテーブルの列の平均化
- 30. 2D numpy配列を1D配列にスライスする
配列の "0-インデックス"とは何ですか? – HeinzKurt
配列の先頭 – Seth
ここに掲載されたソリューションのいずれかがあなたに役立つかどうか不思議ですか? – Divakar