Numpy_索引操作

1、数组中提取某一片段

import numpy as np
a = np.array([[1, 2, 3, 4],
              [5, 6, 7, 8],
              [9, 10, 11, 12]])

a = a[-2:, 1:3]  # -2: 表示的是倒数第二行到最后, 1:3 表示的是第一列及后两列
print(a)

结果为:

[[ 6  7]
 [10 11]]

2、获取一下数组中的7

[[1, 2, 3, 4],
 [5, 6, 7, 8],
 [9, 10, 11, 12]]
import numpy as np
a = np.array([[1, 2, 3, 4],
              [5, 6, 7, 8],
              [9, 10, 11, 12]])
              
# 获取数字7
a = a[1, -2]
print(a)

3、将数组a的每行第二个元素加10

方法一:

import numpy as np
a = np.array([[1, 2, 3, 4],
              [5, 6, 7, 8],
              [9, 10, 11, 12]])
              
a[np.arange(3), 1] += 10
print(a)

结果为:

[[ 1 12  3  4]
 [ 5 16  7  8]
 [ 9 20 11 12]]

方法二:

import numpy as np
a = np.array([[1, 2, 3, 4],
              [5, 6, 7, 8],
              [9, 10, 11, 12]])
              
a[np.arange(3), [1, 1, 1]] += 10
print(a)

结果为:

 [[ 1 12  3  4]
 [ 5 16  7  8]
 [ 9 20 11 12]]

方法三:

import numpy as np
a = np.array([[1, 2, 3, 4],
              [5, 6, 7, 8],
              [9, 10, 11, 12]])
              
a[[0, 1, 2], [1, 1, 1]] += 10
print(a)

结果为:

 [[ 1 12  3  4]
 [ 5 16  7  8]
 [ 9 20 11 12]]

4、获得数组中大于10 的元素

import numpy as np
a = np.array([[1, 12, 3, 4],
              [5, 16, 7, 8],
              [9, 20, 11, 12]])

result_index = a > 10
print(result_index)

c = a[result_index]
print(c)

结果为:

[[False  True False False]
 [False  True False False]
 [False  True  True  True]]

[12 16 20 11 12]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值