如何获得在Python/Numpy中获取"n"矩阵的最大值元素的最佳方法

Art*_*vim 3 python performance numpy max matrix

嘿伙计们,我想知道在Python/Numpy中获得"n"矩阵的最大值元素的最佳最佳/优化方法.

例如:

import numpy as np
matrices=[np.random.random((5,5)) for i in range(10)]
# the function np.maximum from numpy only works for two matrices.
max_matrix=np.maximum(matrices[0],matrices[1])
max_matrix=np.maximum(*matrices) # <- error
Run Code Online (Sandbox Code Playgroud)

你会如何克服这个问题?

Ste*_*ski 5

用途reduce:

reduce(np.maximum, matrices)
Run Code Online (Sandbox Code Playgroud)

来自文档:

reduce(function,iterable [,initializer ])

从左到右累加两个参数的函数到iterable项,以便将iterable减少为单个值.例如,reduce(lambda x, y: x+y, [1, 2, 3, 4, 5])计算 ((((1+2)+3)+4)+5).左参数x是累加值,右参数y是迭代的更新值.如果存在可选的初始值设定项,则它将放置在计算中的iterable项之前,并在iterable为空时用作默认值.如果未给出初始化程序且iterable只包含一个项目,则返回第一个项目.