直接进行大小判断
score = np.random.randint(50, 100, (8, 5))
score
select_score = score[3:,:4] # 切取score数组中行下标为3至最后一行,列下标从0至第3的元素(左闭右开)
select_score
select_score > 80
----------------------------------------------------------------------
score2 = np.random.randint(50, 100, (3, 5)) # 生成3×5 值在[50,100)间的二维数组
score2
score2 > 90 # 逻辑判断, 若大于90则标记为True,否则为False
score2 == 99 # 判断是否存在99
score2[score2 > 60] = 1 # 布尔赋值, 将满足条件的标记为指定的值-布尔索引
score2
操作演示如下
score3 = np.random.randint(50, 100, (3, 5)) # 生成3×5 值在[50,100)间的二维数组
score3
score3[0,0] = 100 # 修改一个
score3[0,2:4] = 0 # 修改连续多个
score3
np.all(score3[1,0:3] > 60)
np.all(score3[1,0:3] > 90)
np.any(score3[1,0:3] < 70)
np.any(score3[1,0:3] < 80)
代码如下
score4 = np.random.randint(50, 100, (3, 5)) # 生成3×5 值在[50,100)间的二维数组
score4
np.where(score4 > 88, 5, 2) # 符合指定条件标置为5,否则为2
np.where(np.logical_and(score4 > 70, score4 < 90), 1, 0) # 符合指定条件标置为1,否则为0
np.where(np.logical_or(score4 <= 70, score4 >= 90), 1, 0) # 符合指定条件标置为1,否则为0
np.where(np.logical_not(score4 <= 70, score4 >= 90), 1, 0) # 符合指定条件标置为1,否则为0
score5 = np.random.randint(50, 100, (3, 5)) # 生成3×5 值在[50,100)间的二维数组
score5
np.where((score5 > 70)&(score5 < 90)) # 与,返回符合条件的行、列下标索引
np.where((score5 > 70)*(score5 < 90)) # 与
np.where((score5 < 70)&(score5 > 90)) # 与
np.where((score5 < 70)|(score5 > 90)) # 或,返回符合条件的行、列下标索引
np.where((score5 < 70))
代码如下
score6 = np.random.randint(30, 100, (3, 5)) # 生成3×5 值在[50,100)间的二维数组
score6
np.min(score6, axis=0) # 统计每一列中的最小值,axis=0为列,axis=1为行
np.max(score6, axis=0) # 统计每一列中的最大值
np.max(score6, axis=1) # 统计每一行中的最大值,axis=1为行
np.median(score6, axis=0) # 统计每一列中的中位数
np.mean(score6, axis=0) # 统计每一列中的算数平均值
np.std(score6, axis=0) # 统计每一列中的标准偏差
np.var(score6, axis=0) # 统计每一列中的方差
np.argmax(score6, axis=0) # 获取每一列中最大值所在的行的索引下标
np.argmin(score6, axis=0) # 获取每一列中最小值所在的行的索引下标
演示结果如下
学习导航:http://xqnav.top/