NumPy基础用法总结

1.把n维变成1维a.flatten()

import numpy as np

a = np.arange(1,28).reshape(3,3,3)
for i in a.flat:
    print(i,',',end='')
print(a.flatten())

在这里插入图片描述

2.两个矩阵合并

np.vstack((a,b))上下合并

import numpy as np

a = np.arange(1,10)
b = np.arange(10,19)
c = np.vstack((a, b))
print(c.shape)

在这里插入图片描述
np.hstack((a,b))左右合并

import numpy as np

a = np.arange(1,10).reshape(3,3)
b = np.arange(10,19).reshape(3,3)
c = np.hstack((a, b))
print(c)

在这里插入图片描述

3.矩阵分割

np.split默认axis为0,就是对行进行分割,也可用vsplit;axis为1就是对列进行分割,也可用split

import numpy as np
a = np.arange(0,12).reshape(4,3)
c = np.split(a,2)
print(c)

在这里插入图片描述

4.np.reshape

当某个轴的指定为-1时,此时numpy会根据实际的数组元素个数自动替换-1为具体的大小
在这里插入图片描述

5.自定义ufunc函数frompyfunc(func,nin,nout)

函数可以将计算单个值的函数转换成一个可对数组中每个元素进行计算的ufunc函数。其中nin是输入func的参数的个数,nout是func返回值的个数。

import numpy as np
def func_x(a):
	y = a + 1
	return y
A = [0, 1, 2]
func_ = np.frompyfunc(func_x, 1, 1)
y = func_(A)
print(y)

在这里插入图片描述

6.广播操作

import numpy as np

a = np.arange(0, 12).reshape(2, 6) + np.arange(1,7)
print(a)

在这里插入图片描述

7.文件存取

a.tofile(file_name) ,保存a到file_name文件中,file_name为字符串类型,如‘a.txt’等;从文件中读回a数组时需要指明类型,如b=np.fromfile(file_name,dtype=np.float)时会报错,正确的使用方式是b=np.fromfile(file_name,dtype=np.int32)

save和load方法(写入文件和从文件读回都不需要指明类型,存储文件类型为npy格式文件):

import numpy as np

a = np.arange(0, 12).reshape(2, 6) + np.arange(1,7)

np.save("a.npy", a)
c = np.load("a.npy")
print(c)

在这里插入图片描述
savetxt和loadtxt方法(保存为txt格式文件):

import numpy as np

a = np.arange(0, 12).reshape(2, 6) + np.arange(1,7)

np.savetxt("a.txt", a)
c = np.loadtxt("a.txt")
print(c)

在这里插入图片描述

8.多维数组的索引和切片(右边框图中的颜色和左边的指令的颜色相对应):

在这里插入图片描述
在这里插入图片描述
数组中“,”化分为几块,就是几维,如a[:,:,2],就是三维数据,提取第2轴的第三个位置元素(即第2轴整个面所有的元素)

9.数组的复制

若改变a的值,b也会相对应改变,若想得到a改变前的值,要用a.copy()

import numpy as np

a = np.array([1,2,3,4])
b = a
c = a.copy()
a[2] = 10
print(b)
print(c)

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值