3 回答

TA貢獻1784條經驗 獲得超8個贊
import numpy as np
#create matrix of size (5,5) with all zeros
matrix = np.zeros((5,5))
matrix[0]=[1,-2,3,-4,-5]
matrix[0]=np.where(matrix[0]<0,0,matrix[0])
說明:導入 numpy 后,初始化一個大小為 5x5 的 0 矩陣并分配一些值(+ve 和 -ve 都到第一行)。現在對矩陣的第一行使用 np.where() ,將 0 分配給 -ve 值和 +ve 值保持不變。np.where() 將第一個參數作為條件,第二個參數是如果條件為真時要做什么,否則當第三個參數中的條件為假時要做什么

TA貢獻1744條經驗 獲得超4個贊
讓我們嘗試通過示例來解決您的問題。
import numpy as np
#create matrix of size (5,5) with all zeros
matrix = np.zeros((5,5))
#since you are curious about first row, I will change the elements of the 1st row only
matrix[0][0] = 1
matrix[0][1] = -10
matrix[0][2] = 5
matrix[0][3] = -12
matrix[0][4] = -18
#loop through only the first row
for i in range(5):
#checking if number is negative
if matrix[0][i] < 0:
matrix[0][i] = 0
print(matrix)
應該這樣做。

TA貢獻1847條經驗 獲得超7個贊
“init_array”是你的 5x5 矩陣。
import numpy as np result = np.where(init_array[0]<0, 0, init_array[0])
必須初始化5x5矩陣的init_array
它將使用init_array[0]檢查第一行元素,只要它小于零,然后它將用零替換它
添加回答
舉報