【Python基础知识库】Numpy库里有哪些函数?

    NumPy是Numerical Python的简称,是目前python高性能科学计算和数据分析中最为重要的基础包。

  • ndarray, 具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。
  • 用于对整组数据进行快速运算的标准数学函数(无需编写循环)。
  • 用于读写磁盘数据的工具以及用于操作内存映射文件的工具。
  • 线性代数、随机数生成以及傅里叶变换功能。
  • 用于集成C、C++、Fortran等语言编写的代码的工具。

    一般导入numpy包,简写成np:

import numpy as np

np常用函数

1、生成函数

    (1)np.array( x):将输入数据转化为一个ndarray

             np.array( x, dtype):将输入数据转化为一个类型为type的ndarray

             np.asarray( array ):将输入数据转化为一个新的(copy)ndarray

data1 = [6, 7, 8, 9, 10]
arr1 = np.array(data1)
arr1
arr1.dtype
arr2 = np.asarray(arr1)
arr2

# 输出
array([ 6,  7,  8,  9, 10])
dtype('int32')
array([ 6,  7,  8,  9, 10])

 

    (2)np.ones( N ):生成一个N长度的一维全一ndarray

             np.ones( N, dtype):生成一个N长度类型是dtype的一维全一ndarray

             np.ones_like( ndarray ):生成一个形状与参数相同的全一ndarray

import numpy as np
arr3 = np.ones(3)
arr3
arr4 = np.ones(3,'float32')
arr4
arr5 = np.ones_like(arr3)
arr5

# 输出
array([1., 1., 1.])
array([1., 1., 1.], dtype=float32)
array([1., 1., 1.])

(3)   np.zeros( N ):生成一个N长度的一维全零 ndarray

            np.zeros( N, dtype):生成一个N长度类型是dtype的一维全零ndarray

            np.zeros_like( ndarray ):生成一个形状与参数相同的全零ndarray

import numpy as np
arr6 = np.zeros(3)
arr6
arr7 = np.zeros(3,'float32')
arr7
arr8 = np.zeros_like(arr3)
arr8

# 输出
array([0., 0., 0.])
array([0., 0., 0.], dtype=float32)
array([0., 0., 0.])

(4) np.empty( N ):生成一个N长度的未初始化一维ndarray
          np.empty( N, dtype):生成一个N长度类型是dtype的未初始化一维ndarray
          np.empty(ndarray):类似np.ones_like( ndarray )

import numpy as np
arr9 = np.empty(3)
arr9
arr10 = np.empty(3,'float32')
arr10
arr11 = np.empty_like(arr3)
arr11

# 输出
array([1., 1., 1.])
array([1., 1., 1.], dtype=float32)
array([1., 1., 1.])

    (5)np.eye( N )或np.identity( N ):创建一个N * N的单位矩阵(对角线为1,其余为0)

import numpy as np
arr12 = np.eye(3)
arr12
arr13 = np.identity(3)
arr13

# 输出
array([[1., 0., 0.],
       [0., 1., 0.],
       [0., 0., 1.]])

array([[1., 0., 0.],
       [0., 1., 0.],
       [0., 0., 1.]])

    (6)np.arange( num):生成一个从0到num-1步数为1的一维ndarray

             np.arange( begin, end):生成一个从begin到end-1步数为1的一维ndarray

             np.arange( begin, end, step):生成一个从begin到end-step的步数为step的一维ndarray

import numpy as np
arr14 = np.arange(3)
arr14
arr15 = np.arange(3,10)
arr15
arr16 = np.arange(3,10,0.5)
arr16

# 输出
array([0, 1, 2])
array([3, 4, 5, 6, 7, 8, 9])
array([3. , 3.5, 4. , 4.5, 5. , 5.5, 6. , 6.5, 7. , 7.5, 8. , 8.5, 9. , 9.5])

    (7)np.full( N,val ):生成一个N长度的一维值为val的 ndarray

             np.full( N, val,dtype):生成一个N长度,值为val,类型是dtype的一维ndarray

             np.full_like( ndarray, val ):生成一个形状相同,但参数为val的ndarray

import numpy as np
arr17 = np.full(3,6)
arr17
arr18 = np.full(3,7,'float32')
arr18
arr19 = np.full_like(arr3,4)
arr19

# 输出
array([6, 6, 6])
array([7., 7., 7.], dtype=float32)
array([4., 4., 4.])

 2、矩阵函数

    np.diag( ndarray):以一维数组的形式返回方阵的对角线(或非对角线)元素

    np..diag( [x,y,...]):将一维数组转化为方阵(非对角线元素为0)

    np.dot(ndarray, ndarray):矩阵乘法

    np.trace( ndarray):计算对角线元素的和

import numpy as np
arr1 = np.ones((3,6))
arr2 = np.empty((6,2))
np.diag(arr1)
np.diag([3,3,4])
np.dot(arr1,arr2)
np.trace(arr1)

# 输出
array([1., 1., 1.])

array([[3, 0, 0],
       [0, 3, 0],
       [0, 0, 4]])

array([[1.33171873e-311, 6.65859366e-312],
       [1.33171873e-311, 6.65859366e-312],
       [1.33171873e-311, 6.65859366e-312]])

3.0

3、排序函数

    np.sort( ndarray):排序,返回副本

    np.unique(ndarray):返回ndarray中的元素,排除重复元素之后,并进行排序

    np.intersect1d( ndarray1, ndarray2):返回二者的交集并排序

    np.union1d( ndarray1, ndarray2):返回二者的并集并排序

    np.setdiff1d( ndarray1, ndarray2):返回二者的差

    np.setxor1d( ndarray1, ndarray2):返回二者的对称差

import numpy as np
arr1 = np.arange(3,10)
  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值