python - 当考虑速度时行的 numpy 平均值

标签 python performance numpy

我想计算 numpy 矩阵行的平均值。所以对于输入:

array([[ 1,  1, -1],
       [ 2,  0,  0],
       [ 3,  1,  1],
       [ 4,  0, -1]])

我的输出将是:

  array([[ 0.33333333],
         [ 0.66666667],
         [ 1.66666667],
         [ 1.        ]])

我想出了一个解决方案result = array([[x] for x in np.mean(my_matrix, axis=1)]),但是这个函数会被调用很多次在 40 行 x 10-300 列的矩阵上,所以我想让它更快,但这个实现似乎很慢

最佳答案

你可以这样做:

>>> my_matrix.mean(axis=1)[:,np.newaxis]
array([[ 0.33333333],
       [ 0.66666667],
       [ 1.66666667],
       [ 1.        ]])

关于python - 当考虑速度时行的 numpy 平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27060106/

相关文章:

android - 当我尝试重复我的操作时,应用程序性能不佳

c# - 如何创建一个高效的循环来在 Windows 服务中每 X 分钟执行一次操作?

python - 打印 numpy 数组中所有列都满足特定条件的行?

python - 机器学习教程中的类型错误,numpy

python - 我如何进行 "print"调用,以便代码在 Python 2 和 Python 3 中自动运行?

python - 在 Ubuntu 上安装 python 模块

python - 如何忽略单词之间的空格而不是其他字符?

python - 剪切一些值为 255 的行和列

javascript - 可读缩短器的简单建议/推荐算法

python - 使用 ODEINT 或其他方法求解许多耦合微分方程组