关于Numpy的基本用法_04

np.show_config()
# 打印numpy的版本和配置说明
print(np.__version__)
# 打印numpy版本
array_zeros = np.zeros(10)
# 创建一个长度为10的0向量
np.info(np.add)
# 从命令行得到numpy中add函数的说明文档?
array_zeros = np.zeros(10)
array_zeros[4] = 1
# 创建一个长度为10并且除了第五个值为1的空向量
array_ranges = np.arange(10, 50)
# 创建一个值域范围从10到49的向量
array_ranges = array_ranges[::-1]
# 反转一个向量(第一个元素变为最后一个)
matrix_range = np.arange(9).reshape((3, 3))
# 创建一个 3x3 并且值从0到8的矩阵
array = [1,2,0,0,4,0]
index = np.nonzero(array)
#  找到数组[1,2,0,0,4,0]中非0元素的位置索引
matrix = np.eye(3)
print(matrix)
# 创建一个 3x3 的单位矩阵
array = np.random.randn(3,3,3)
print(array)
# 创建一个 3x3x3的随机数组
matrix = np.random.random((10, 10))
print(matrix.max(),matrix.min())
# 创建一个10x10的随机矩阵并找到其最小值和最大值
array = np.random.random(30).mean()
# 创建一个长度为30的随机数组并取其平均值
matrix = np.ones((10,10))
matrix[1:-1,1:-1] = 0
print(matrix)
# 创建二维数组,边界值为1,其余值为0
matrix = np.arange(100).reshape((10, 10))
matrix = np.pad(matrix, pad_width=1, mode="constant", constant_values=0)
matrix——表示需要填充的数组;
pad_width——表示每个轴(axis)边缘需要填充的数值数目。
参数输入方式为:((before_1, after_1), … (before_N, after_N)),
其中(before_1, after_1)表示第1轴两边缘分别填充before_1个和after_1个数值。取值为:{sequence, array_like, int}
mode——表示填充的方式(取值:str字符串或用户提供的函数),总共有11种填充模式;
‘constant’——表示连续填充相同的值,每个轴可以分别指定填充值,constant_values=(x, y)时前面用x填充,后面用y填充,缺省值填充0

‘edge’——表示用边缘值填充

‘linear_ramp’——表示用边缘递减的方式填充

‘maximum’——表示最大值填充

‘mean’——表示均值填充

‘median’——表示中位数填充

‘minimum’——表示最小值填充

‘reflect’——表示对称填充

‘symmetric’——表示对称填充

‘wrap’——表示用原数组后面的值填充前面,前面的值填充后面

print(matrix)
# 对于一个存在的数组,用0填充边界
print(0*np.nan)
# nan
print(np.nan == np.nan)
# False
print(np.inf>np.nan)
# False
print(np.nan-np.nan)
# nan
print(0.3 ==3*0.1)
# False
matrix = np.diag(1+np.arange(4),k =-1)
# 在np.diag(array) 中
# array是一个1维数组时,结果形成一个以一维数组为对角线元素的矩阵
# array是一个二维矩阵时,结果输出矩阵的对角线元素
# k为控制沿着对角线上下移动参数
# 创建5x5矩阵,并且设置值1,2,3,4落在其对角线下方位置
# 创建一个8x8的矩阵 并设置为棋盘格式
matrix = np.zeros((8, 8))
matrix[1::2,::2] = 1
matrix[::2,1::2] = 1
# 创建一个8x8的矩阵 并设置为棋盘格式
print(np.unravel_index(100,(6,7,8)))
而 order由两种取值:“C”,“F”,“C”表示的是以横坐标为基准;“F”表示的是以纵坐标为基准。
# (6,7,8)形状数组第100号元素下标
matrix = np.tile(np.array([[0,1],[1,0]]),(4,4))
# 在numpy中,np.tile(matrix,(m,n))函数的作用就是将函数将矩阵沿着X,y轴扩大m,n倍。如果扩大倍数只有一个,默认为X轴
# 使用tile函数创建8x8的棋盘样式矩阵
matrix = np.random.random((5,5))
matrix_min = matrix.min()
matrix_max = matrix.max()
matrix_normalization = (matrix-matrix_min)/(matrix_max-matrix_min)
# 对5x5随机矩阵进行归一化使用Rescaling (min-max normalization)
color = np.dtype([("r",np.ubyte,1),("g",np.ubyte,1),("b",np.ubyte,1),("a",np.ubyte,1)])
print(color)
自定义颜色类型(失败)
matrix_1 = np.arange(15).reshape((5,3))
matrix_2 = np.arange(6).reshape((3,2))
result_1 = matrix_1.dot(matrix_2)
result_2 = np.matmul(matrix_1,matrix_2)
print(result_1,"\n",result_2)
# 矩阵相乘
array = np.arange(16)
array[3:9] = array[3:9]*-1
print(array)
# plan b
array[(array>3) & (array<=8)] *=-1
print(array)
# 将数组3-8号元素取反
print(sum(range(5),-1))
# 0+1+2+3+4-1
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值