小编use*_*970的帖子

bothon从python中的列表子集索引

我有一个名字数组,以及相应的数据数组.从名称数组中,还有一个较小的名称子集:

data = np.array([75., 49., 80., 87., 99.])
arr1 = np.array(['Bob', 'Joe', 'Mary', 'Ellen', 'Dick'], dtype='|S5')
arr2 = np.array(['Mary', 'Dick'], dtype='|S5')
Run Code Online (Sandbox Code Playgroud)

我正在尝试创建一个新的数据数组,仅对应于arr2中出现的名称.这就是我自己能够想到的:

TF = []
for i in arr1: 
    if i in arr2:
        TF.append(True)
    else:
        TF.append(False)
new_data = data[TF]
Run Code Online (Sandbox Code Playgroud)

有没有更有效的方法来做这个不涉及for循环?我应该提到数组本身是从外部文件输入的,实际上有多个数据数组,所以我无法真正改变它.

python arrays indexing boolean

5
推荐指数
1
解决办法
801
查看次数

标签 统计

arrays ×1

boolean ×1

indexing ×1

python ×1