numpy矩阵索引

numpy索引
本文是课程笔记,课程来源:【莫烦Python】Numpy & Pandas (数据处理教程)

import numpy as np

# 此部分为numpy索引
# 本节示例重点是二维矩阵

array = np.arange(3, 15)
array2d = np.arange(3, 15).reshape(3, 4)
# 通过下标获取对象,注意这里是对象,array可能存放着更高维度的矩阵,例如n维矩阵,我们是将所有的n-1维的矩阵封装在一起才实现的(n-1)+1的升维
# 那么index访问的是封装的n维矩阵的第index个n-1维矩阵
print(array[2])
print(array2d[2])
# 如果还未到0维度,则可以继续访问
print(array2d[2][2])
# 当也可以这样访问,和上面一样的
print(array2d[2, 2])

# 根据行列访问数组
# 访问index行的所有数
print('2行=', array2d[2, :])
# 访问index列的所有数
print('2列=', array2d[:, 2])

# 限定范围访问
# 访问index行的下标为0到2的数
print('2行=', array2d[2, 0:2])
# 访问index列的下标为0到2的数
print('2列=', array2d[0:2, 2])

# 迭代器访问
# 访问每一行
for row in array2d:
    print(row)
    for val in row:
        print(val)
# 访问每一列,由于py并没有提供列迭代器,因此需要转置矩阵
for col in array2d.T:
    print(col)
# 访问每一个元素
# 很遗憾py只提供迭代器的for循环访问,想要访问每一个元素,要么如上:
for row in array2d:
    for val in row:
        print(val)
# 但通常是如下:
for val in array2d.flat:
    print(val)
# flat是将array转化成0到array.size-1的迭代器,flatten()相当于访问flat迭代后的指针:*Object
print(array2d.flatten())

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尼古拉斯喵呜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值