You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Numpy创建数组并筛选指定学生对应的成绩行?

使用NumPy筛选指定学生对应的成绩行

步骤1:创建目标数组

首先导入NumPy并创建题目要求的两个数组:

import numpy as np

students = np.array(['Janet', 'Adriana', 'Manual', 'Mohamed', 'Leann'])
grades = np.array([[93, 85], [78, 80], [94, 93], [75, 90], [92, 87]])

步骤2:生成筛选掩码

通过布尔条件生成掩码,标记出'Adriana'和'Mohamed'对应的位置:

# 注意使用NumPy的位运算符`|`表示逻辑或,不能用Python内置的`or`
mask = (students == 'Adriana') | (students == 'Mohamed')

此时mask的值为array([False, True, False, True, False]),对应两个目标学生的位置为True。

步骤3:筛选成绩行

直接用掩码索引grades数组,即可提取目标学生的成绩:

target_grades = grades[mask]
print(target_grades)

运行结果:

[[78 80]
 [75 90]]

补充说明

NumPy的布尔索引是高效筛选数据的常用方式,只要掩码的长度与被索引数组的第一维度长度匹配,就能精准提取对应位置的元素/行。

内容的提问来源于stack exchange,提问作者IAwa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 06:01:07