Matlab在python中的索引与替换
在matalb中,我们可以将一个向量设为a=[1,3,4],并使用它访问和替换另一个向量或矩阵的元素,如下所示Matlab在python中的索引与替换,python,matlab,indexing,Python,Matlab,Indexing,在matalb中,我们可以将一个向量设为a=[1,3,4],并使用它访问和替换另一个向量或矩阵的元素,如下所示 a=[1,2,4]; b=[1,2,3,4]; b(a)=1 所以b是[1,1,3,1] 在python中是否有这样做的方法 我知道我可以做这样的事情: a=[1,2,4] b=list(range(1,10)) [b[x] for x in a] 例如,我不需要替换这些值。Numpy具有类似的功能。但是,请记住,Numpy索引从0开始。不是在1: import numpy as
a=[1,2,4];
b=[1,2,3,4];
b(a)=1
所以b是[1,1,3,1]
在python中是否有这样做的方法
我知道我可以做这样的事情:
a=[1,2,4]
b=list(range(1,10))
[b[x] for x in a]
例如,我不需要替换这些值。Numpy具有类似的功能。但是,请记住,Numpy索引从0开始。不是在1:
import numpy as np
a = np.array([1, 2, 4])
b = np.array([1, 2, 3, 4])
b[a - 1] = 1
print(b)
#[1 1 3 1]
您还可以在python中使用逻辑索引:
将numpy导入为np
a=np.数组([1,1,1,0])
b=np.数组([5,6,7,8])
b[a==True]=1
#[1 1 1 8]
看看numpy。