簡體   English   中英

計算NumPy中數組的平均值

[英]Calculate mean of arrays in NumPy

給出三個列表:

A = [1, 2, 3]
B = [4, 5, 6]
C = [7, 8, 9]

如何計算以下(列)的平均值?

  • 平均值[1,4,7]
  • [2,5,8]的平均值
  • 平均值[3,6,9]

不是以下(行),

  • [1、2、3]的平均值
  • [4,5,6]的平均值
  • 平均值[7,8,9]

import numpy as np
A = np.array([1,2,3])
B = np.array([4,5,6])
C = np.array([7,8,9])

我該怎么辦?

使用numpy.ndarray.transpose

>>> np.array([
...     [1,2,3],
...     [4,5,6],
...     [7,8,9]
... ]).transpose().mean(axis=1)
array([ 4.,  5.,  6.])

或使用numpy.transpose

>>> np.transpose([
...     [1,2,3],
...     [4,5,6],
...     [7,8,9]
... ]).mean(axis=1)
array([ 4.,  5.,  6.])

UPDATE

正如Dave Hirschfeld所評論的那樣, axis=0均值要好得多:

>>> np.array([
...     [1,2,3],
...     [4,5,6],
...     [7,8,9]
... ]).mean(axis=0)
array([ 4.,  5.,  6.])
import numpy as np
A = np.array([1,2,3])
B = np.array([4,5,6])
C = np.array([7,8,9])

Z = zip(A,B,C)

for z in Z :
    print np.mean(np.asarray(z))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM