numpy中一维数组的布尔类型使用和翻转操作及二维数组的切片操作

1、一维数组操作

1、使用布尔类型数据操作数组

x = np.array([1, 2, 3])
i = [True, True, False]
y = x[i] * 2
# [2 4]
print(y)

2、一维数组的翻转

a = np.arange(10)
# [1 3 5 7]
print(a[1:9:2])
# 步长为-1,即数据的翻转
# [9 8 7 6 5 4 3 2 1 0]
print(a[::-1])

2、二维数组操作

1、二维数组的切片操作

# @Time : 2020/12/4 14:59
# @Description :二维数组的切片
import numpy as np

a2 = np.arange(0, 60, 10).reshape((-1, 1))
a3 = np.arange(6)
# a1中的每一行和a2进行广播相加
# [[ 0]
#  [10]
#  [20]
#  [30]
#  [40]
#  [50]]
print(a2)
# [0 1 2 3 4 5]

print(a3)
a1 = np.arange(0, 60, 10).reshape((-1, 1)) + np.arange(6)
# [[ 0  1  2  3  4  5]
#  [10 11 12 13 14 15]
#  [20 21 22 23 24 25]
#  [30 31 32 33 34 35]
#  [40 41 42 43 44 45]
#  [50 51 52 53 54 55]]
print(a1)
# 二维数组的切片
# 查找a1矩阵中坐标为(0+1,1+1)(1+1,3+1)(2+1,4+1)数据
# [ 2 13 24]
print(a1[[0, 1, 2], [2, 3, 4]])
# 查找a1矩阵中第5行(2+1,3+1,4+1)的数据,并作为一个列表返回
# [42 43 44]
print(a1[4, [2, 3, 4]])
# 查找a1矩阵中第5,6行(2+1,3+1,4+1)的数据
# [[42 43 44]
#  [52 53 54]]
print(a1[4:, [2, 3, 4]])
i = np.array([True, False, True, False, False, True])
# 查找a1矩阵中第1,3,6行数据
# [[ 0  1  2  3  4  5]
#  [20 21 22 23 24 25]
#  [50 51 52 53 54 55]]
print(a1[i])
# # 查找a1矩阵中第1,3,6行数据的第4列
# [ 3 23 53]
print(a1[i, 3])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值