例如
我有一个矢量:
a=[4 4 15 15 9 9 7 7];
Run Code Online (Sandbox Code Playgroud)
我如何有效地将所有4s替换成1s,所有15s分为2s,9s分为3s,7s分为4s?而不是重复编码:
a(a==4)=1; a(a==15)=2; a(a==9)=3; a(a==7)=4; ....
Run Code Online (Sandbox Code Playgroud)
如果我有太多的数字需要更换?
非常感谢你!
我有一个numpy数组
test_array = np.arange(100).reshape((4,25))
Run Code Online (Sandbox Code Playgroud)
我想合并以下列以形成一个新数组
1:3, 2:4, 3:15, 2:24, 6:8, 12:13
Run Code Online (Sandbox Code Playgroud)
我知道这段代码会工作
np.hstack((test_array[:,1:3],test_array[:,2:4],test_array[:,3:15],test_array[:,2:24],test_array[:,6:8],test_array[:,12:13]))
Run Code Online (Sandbox Code Playgroud)
但是,如果有更好的方法来避免复制这么多的“ test_array”,则类似:
np.hstack((test_array[:,[1:3 2:4 3:15 2:24 6:8 12:13]]))
Run Code Online (Sandbox Code Playgroud)