Экспонент трехмерного массива с NumPy
Учитывая массив NxMxM, содержащий квадраты N, MxM, как рассчитать N показателей степени массивов MxM.
from scipy.linalg import expm
U = np.random.rand(10,6,6) #Given 10 six by six arrays calculate the following:
exp = expm(U)
>>> [expm(U[0]),expm(U[1])...expm(U[9])]
Я хотел бы избежать петель и использовать манипуляцию NumPy.
0 ответов
Вы можете использовать понимание списка:
exp = [expm(x) for x in U]
поскольку expm
принимает только одну квадратную матрицу, цикл по матрицам будет запускать Python. Но поскольку с матрицами в любом случае придется разбираться независимо, это не должно быть большой проблемой.