当前位置: 首页 > 面试题库 >

如何将布尔数组转换为numpy中的索引数组

霍财
2023-03-14
问题内容

有没有一种有效的Numpy机制,可以根据条件为true而不是布尔掩码数组来检索数组中位置的整数索引?

例如:

x=np.array([range(100,1,-1)])
#generate a mask to find all values that are a power of 2
mask=x&(x-1)==0
#This will tell me those values
print x[mask]

在这种情况下,我想知道指标imask地方mask[i]==True。是否可以生成这些而不循环?


问题答案:

另外的选择:

In [13]: numpy.where(mask)
Out[13]: (array([36, 68, 84, 92, 96, 98]),)

这与numpy.where(mask==True)



 类似资料:
  • 问题内容: 假设我有一个一维numpy数组 我想将此编码为2D一热阵列 有快速的方法吗?比循环遍历设置元素更快。 问题答案: 您的数组定义了输出数组中非零元素的列。您还需要定义行,然后使用花式索引:

  • 假设我有一个1d numpy数组 我想将其编码为一个2D one hot数组 有没有快速的方法可以做到这一点?比仅仅在上循环设置的元素更快。

  • 问题内容: 你是否知道如何以NumPy数组或python列表的形式获取DataFrame的索引或列? 问题答案: 要获取NumPy数组,应使用以下属性: 这样可以访问数据的存储方式,因此无需进行转换。 注意:此属性也可用于其他许多熊猫的对象。 要将索引作为列表获取,请致电tolist: 同样,对于列。

  • 问题内容: 您是否知道如何以NumPy数组或python列表的形式获取DataFrame的索引或列? 问题答案: 要获取NumPy数组,应使用以下属性: 这样可以访问数据的存储方式,因此无需进行转换。 注意:此属性也可用于其他许多熊猫的对象。 要将索引作为列表获取,请致电: 同样,对于列。

  • 我需要将一个整数(代表x.509 KeyUsage掩码)转换为布尔数组,在Java中,我有以下可用函数,可以正常工作: 在这种情况下(144),它应该返回 密钥用法={boolean[9]@976}[0]=真[1]=假[2]=假[3]=真[4]=假[5]=假[6]=假[7]=假[8]=假 在Groovy中运行这个时,我得到 org.codehaus.groovy.control.MultipleC

  • 您知道如何将DataFrame的索引或列作为NumPy数组或python列表获取吗?