Saya memiliki daftar n matriks di mana n = 5:

[matrix([[3.62425112, 0.00953506],
        [0.00953506, 1.05054417]]), matrix([[4.15808905e+00, 9.27845937e-04],
        [9.27845937e-04, 9.88509628e-01]]), matrix([[3.90560856, 0.0504297 ],
        [0.0504297 , 0.92587046]]), matrix([[ 3.87347073, -0.12430547],
        [-0.12430547,  1.09071475]]), matrix([[ 3.87697392, -0.00475038],
        [-0.00475038,  1.01439917]])]

Saya ingin melakukan penambahan elemen dari matriks ini:

Saya mencoba ini:

np.add(S_list[0], S_list[1], S_list[2], S_list[3], S_list[4])

Ini berfungsi tetapi saya tidak ingin memperbaiki n = 5

Adakah yang bisa membantu? Terima kasih.

0
shay 8 Januari 2021, 20:42

3 jawaban

Jawaban Terbaik

Menurut dokumentasi, np.add hanya boleh menambahkan dua matriks.

Namun np.add.reduce(S_list) atau hanya sum(S_list) akan memberikan apa yang Anda inginkan.

1
Lior Cohen 8 Januari 2021, 17:57

Anda bisa menggunakan fungsi bawaan Python sum

sum(S_list)

Keluaran:

[[19.43839338 -0.06816324]
 [-0.06816324  5.07003818]]
0
Mitchell Olislagers 8 Januari 2021, 17:55

Apakah Anda yakin np.add(S_list[0], S_list[1], S_list[2], S_list[3], S_list[4]) berfungsi? Karena np.add() mengambil argumen input dua array . Bagaimanapun, kode berikut berfungsi jika Anda ingin menggunakan np.add():

sum = np.add(S_list[0],S_list[1])

for i in range(len(S_list) - 2):
    sum = np.add(sum,S_list[i+2])

print(sum)

0
George 8 Januari 2021, 18:10