亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

numpy如何對數組的每個元素進行批量操作

numpy如何對數組的每個元素進行批量操作

白板的微信 2023-09-12 19:59:09
我有一個 numpy 數組[ [1,5,6], [10,12,20]]我想對數組的每個元素進行操作,獲取當前元素值并執行操作。一種類似于 np.square 函數的批量操作。即 x = (x + 1) * 2 結果將是:[ [4,12,14], [22,26,42]]我知道我可以為每個元素執行 for 循環并應用該操作,但我想要更緊湊的語法。
查看完整描述

2 回答

?
慕斯王

TA貢獻1864條經驗 獲得超2個贊

您可以使用numpy:


import numpy as np


lst = [

    [1, 5, 6],

    [10, 12, 20]

]


lst = np.array(lst)

lst = (lst + 1) * 2

print(lst)

根據需要輸出:


[[ 4 12 14]

 [22 26 42]]

如果最后你希望它是一個列表,你可以將它轉換回來,但np數組很棒。


查看完整回答
反對 回復 2023-09-12
?
慕村225694

TA貢獻1880條經驗 獲得超4個贊

使用 numpy 矢量化的解決方案:


# define numpy array

arr = np.array([

 [1,5,6],

 [10,12,20]

])


# create function

func = np.vectorize(lambda x: (x + 1) * 2)


# apply function to array

func(arr)


查看完整回答
反對 回復 2023-09-12
  • 2 回答
  • 0 關注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號