numpy入门

import numpy as np

numpy基本加减和取行操作—-python的广播机制

a = np.array([1, 1, 1, 1])
b = np.array([[1], [1], [1], [1]])
c = np.array([[1, 1, 1, 1]])
a+b

在这里插入图片描述

c+b

在这里插入图片描述

numpy下标索引与切片

W = np.array([[1,1,1], [2,2,2]])
W[:, 1]

在这里插入图片描述

W[1]

在这里插入图片描述

W[:, 1] = np.array([5, 5])
W

在这里插入图片描述

矩阵删除、插入、尾部添加操作(delete, insert, append)

delete()函数
matrix = np.array([[1,2,3,4], [5,6,7,8], [9,10,11,12]])
p1 = np.delete(matrix, 1, 0)  # 第0维度第一行被删除
print(p1)

在这里插入图片描述

p2 = np.delete(matrix, 1, 1)  # 第一维度第一行被删除
print(p2)

在这里插入图片描述

p3 = np.delete(matrix, 1)  # 拉平后删除第一个元素(初始为第零个)
print(p3)

在这里插入图片描述

p4 = np.delete(matrix, [0,1], 1)  # 第一列第0,1行被删除
print(p4)

在这里插入图片描述

insert()函数
q1 = np.insert(matrix, 1, [1,1,1,1], 0)  # 第0列第一行添加[1,1,1,1]
print(q1)

在这里插入图片描述

q2 = np.insert(matrix, 0, [1,1,1], 1)  # 第1列第0行添加1,1,1
print(q2)

在这里插入图片描述

q3 = np.insert(matrix, 3, [1,1,1,1], 0) # 第0维度(行)第3行添加[1,1,1,1]
print(q3)

在这里插入图片描述

append()函数
m1 = np.append(matrix,[[1,1,1,1]],axis=0)  # 第0维度(行)尾部添加[[1,1,1,1]],注意两个[],相同维度
print(m1)

在这里插入图片描述

m2 = np.append(matrix,[[1],[1],[1]],axis=1)  # 第1维度(列)尾部添加[[1],[1],[1]],注意两个[],相同维度
print(m2)

在这里插入图片描述

m3 = np.append(matrix,[1,1,1,1])  # 拉平后再尾部添加[1,1,1,1],这里可以[[1,1,1,1]]和[1,1,1,1]均可
print(m3)

在这里插入图片描述

np.argmax(a, axis=None, out=None)

num1 = np.array([[1,1,1],[2,2,2],[0,3,6]])
num1

在这里插入图片描述

num2 = np.argmax(num1)  # 将数组a拉平,最大值索引为9
num2

8

num3 = np.argmax(num1, axis=0) # 按列选取最大值的索引
num3

在这里插入图片描述

num4 = np.argmax(num1, axis=1)  # 按行选取最大值的索引
num4

在这里插入图片描述

np.prod() 计算元素乘积

asd = np.array([[101,21,323],[224,321,442]])
np.prod(asd)

1822726720

np.prod(asd,axis=1)

在这里插入图片描述

np.prod(asd,axis=0)

在这里插入图片描述

np.zeros_like()构造全零矩阵,无需指定大小

zxc = np.array([[11,22,32],[43,54,65]])
np.zeros_like(zxc) # 生成一个和x大小相同的全零矩阵

在这里插入图片描述

np.random.rand() 生成均匀分布矩阵,创建一个矩阵,服从[0,1]随机分布

qwe = np.random.rand(5,3)
qwe

在这里插入图片描述

np.random.randn() 生成正态分布矩阵

qwe1 = np.random.rand(5,8)
qwe1

在这里插入图片描述

np.randm.randint() 生成离散均匀分布的整数值组成的矩阵

qwe2 = np.random.randint(4,9,(2,3))
qwe2

在这里插入图片描述

np.meshgrid() 快速生成网格

meshgrid(x,y) 可用于快速生成由于 x轴坐标 x 和 y 轴坐标 y 组合的网格点
asd1 = np.array([1,3,5])
asd2 = np.array([4,6])
ASD1, ASD2 = np.meshgrid(asd1, asd2)
ASD1

在这里插入图片描述

ASD2

在这里插入图片描述

numpy取整—-round,floor,ceil

# round
zxc1 = np.array([0.125,0.568,5.688])
np.round(zxc1)  # 四舍五入取整

在这里插入图片描述

np.round(zxc1,decimals = 2) # 四舍五入保留2位小数

在这里插入图片描述

np.floor(zxc1) # 向下取整

在这里插入图片描述

np.ceil(zxc1) # 向上取整

在这里插入图片描述

np.newaxis 在特定位置增加一个维度

abc = np.array([1,2,5,4])
abc[:, np.newaxis]

在这里插入图片描述

abc[np.newaxis, :]

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值