如何将给定数字放在另一个数组中另一个数组的所有出现位置的相同位置?

时间:2017-06-29 10:47:26

标签: python arrays numpy

我想将一个给定的数字放在另一个数组中另一个数组的所有出现的相同位置。

要明白我在说什么,我做了一个简单的功能,它做了我想要的,我正在向你展示执行。但

我的问题是:numpy这样的模块中是否有命令已经这样做了?

功能

def swap(tab1,tab2):
    n, m = tab1.shape
    for i in range(n):
        for j in range(m):
            if tab1[i,j]==1.:
                tab2[i,j]=2.
    return tab2

执行

tab1 = np.array([[0,1.,0],[1.,1.,1.],[0,1.,0]])
tab2 = np.array([[1.,1.,0],[1.,0.,1.],[0,1.,1.]])

tab1

array([[ 0.,  1.,  0.],
       [ 1.,  1.,  1.],
       [ 0.,  1.,  0.]])

tab2

array([[ 1.,  1.,  0.],
       [ 1.,  0.,  1.],
       [ 0.,  1.,  1.]])

saw(tab1,tab2)

array([[ 1.,  2.,  0.],
       [ 2.,  2.,  2.],
       [ 0.,  2.,  1.]])

1 个答案:

答案 0 :(得分:2)

Numpy在这方面非常擅长。您可以使用mounted: function () { var self = this; console.log(this.tableRow); this.$nextTick(() => { $("#table1 tr").click(function () { var list = []; var $row = $(this).closest("tr"), $tds = $row.find("td"); list.push({ name: $tds.eq(0).text(), numSongs: $tds.eq(1).text(), Year: $tds.eq(2).text() }); self.tableRow = list; console.log(this.tableRow); }); }); }, 和花式索引,如下所示;

np.where

演示:

tab2[np.where(tab1==1.)] = 2.