Numpy根据Bool值挑选数组中元素
觉得有用的话,欢迎一起讨论相互学习~
使用Boolean类型的数组挑选一维数组中的值
- 使用一维Boolean数组选取数组中的特定元素,对应位置为True则选取,为False则不选取
import numpy as np
i_=[2] # 挑选第三行数据
pop=np.arange(12).reshape(3,4)
print("pop(3,4)
",pop)
bool=np.array([0,0,1,1]).astype("bool") # [False,False,True,True]
# 使用数组作为索引选择个体
pop_i_=pop[i_]
print("pop_i_
",pop_i_)
#选择个体中选定的位置
pop_select=pop[i_,bool]
print("pop_select
",pop_select)
# pop(3,4)
# [[ 0 1 2 3]
# [ 4 5 6 7]
# [ 8 9 10 11]]
# pop_i_
# [[ 8 9 10 11]]
# pop_select
# [10 11]