Numpy学习笔记(三)索引&切片


前言

  本文主要介绍numpy中的索引切片以及如何合并


一、索引

1.导入库&定义一维数组

import numpy as np
A = np.arange(3, 15)
print(A)

结果显示:
在这里插入图片描述

2.一维数组索引

print(A[2]) # 第二个元素值

结果显示:
在这里插入图片描述

3.变更为多维进行索引

B = A.reshape(3,4) # 变为三行四列数
print(B)

结果显示:
在这里插入图片描述

print(B[2]) # 第二行元素组成的列表 切片操作
print(B[2, :]) 

print(B[1, 1:2]) # 第一行第一列元素成的列表

print(B[1][1]) # 第一行第一列值
print(B[1, 1])

结果显示:
在这里插入图片描述

4.迭代打印

1)

for row in B: # 迭代生成B的行
    print(row)

结果显示:
在这里插入图片描述
2)

for col in B.T: # 迭代生成A的列,进行转置
    print(col)

结果显示:
在这里插入图片描述
3)

print(A.flatten()) # 使用flatten将A转成一维的数组
for item in A.flat: # flat是一个迭代器,本身是一个object属性
    print(item)

结果显示:
在这里插入图片描述

二、合并

1.导入库&定义数组

import numpy as np
A = np.array([1,1,1])
B = np.array([2,2,2])

2.vstack()上下(垂直)&hstack()左右(水平)合并

C = np.vstack((A, B)) # 垂直(上下)合并
D = np.hstack((A, B)) # 水平(左右)合并

print(C)
print(A.shape , C.shape) # A是序列或者向量 C是两行三列的矩阵

print(D)
print(A.shape, D.shape) # D为序列或向量

结果显示:
在这里插入图片描述

3.数组转置为矩阵

1)

print(A.T)
print(A.T.shape)
print("")

print(A.reshape(3,1))
print(A[np.newaxis, :]) # 在行方向增加维度
print(A[:, np.newaxis]) # 在列方向增加维度

结果显示:
在这里插入图片描述
2)

A = np.array([1, 1, 1])[:, np.newaxis]
B = np.array([2, 2, 2])[np.newaxis, :]
print(A)
print("")
print(B)

结果显示:
在这里插入图片描述

4.concatenate()合并

1)

C = np.concatenate((A, B, B, A), axis=0) # 纵向合并
print(C)

结果显示:
在这里插入图片描述
2)

C = np.concatenate((A, B), axis=1)
print(C)

结果显示:
在这里插入图片描述

下一节为分割和拷贝

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值