• NumPy基础


    定义

    NumPy:Numerical Python的简称。

    ndarray: 一种高效多维数组,是Python中一个快速、灵活的大行数据容器。

    所有元组应为同一类型,若不是则向下转化。也称为数组、NumPy数组。

    生成ndarray

    使用array创建

    list_1 = list(range(10))
    tuple_1 = tuple(range(10))
    array_l = np.array(list_1) 
    array_t = np.array(tuple_1)
    array_a = np.array(range(10))
    array_tf1 = (array_l == array_a)
    array_tf2 =(array_l == array_t)
    
    print(False not in array_tf1)        #out:True
    print(False not in array_tf2)        #out:True
    array_l                               #out:array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

    asarray 与 array的区别

    arr1 = np.array([1,2,3])
    np.asarray(arr1) is arr1  #out:True
    np.array(arr1) is arr1   #out:False

    注意array默认复制所有的输入数据,而asarray如果输入的已经是naarray则不再复制。

    ones 和 ones_like

    zeros 和 zero_like、full和full_like、empty和empty_like与上面差不多

    eye、identity

    identity可创建一个正方的N*N单位矩阵(对角线为1,其余为0)。

    复制代码
    1 >>> np.identity(5)
    2 array([[ 1.,  0.,  0.,  0.,  0.],
    3        [ 0.,  1.,  0.,  0.,  0.],
    4        [ 0.,  0.,  1.,  0.,  0.],
    5        [ 0.,  0.,  0.,  1.,  0.],
    6        [ 0.,  0.,  0.,  0.,  1.]])
    复制代码

    eye在单参时与identity功能相同:

    复制代码
    1 >>> np.eye(5)
    2 array([[ 1.,  0.,  0.,  0.,  0.],
    3        [ 0.,  1.,  0.,  0.,  0.],
    4        [ 0.,  0.,  1.,  0.,  0.],
    5        [ 0.,  0.,  0.,  1.,  0.],
    6        [ 0.,  0.,  0.,  0.,  1.]])
    复制代码

    除此之外,eye后面可加参数k,表示第几条对角线为全1,如:

    复制代码
    1 >>> np.eye(5,k=1)
    2 array([[ 0.,  1.,  0.,  0.,  0.],
    3        [ 0.,  0.,  1.,  0.,  0.],
    4        [ 0.,  0.,  0.,  1.,  0.],
    5        [ 0.,  0.,  0.,  0.,  1.],
    6        [ 0.,  0.,  0.,  0.,  0.]])
    复制代码
    复制代码
    1 >>> np.eye(5,k=-2)
    2 array([[ 0.,  0.,  0.,  0.,  0.],
    3        [ 0.,  0.,  0.,  0.,  0.],
    4        [ 1.,  0.,  0.,  0.,  0.],
    5        [ 0.,  1.,  0.,  0.,  0.],
    6        [ 0.,  0.,  1.,  0.,  0.]])
    复制代码

    eye还可以指定长宽(可理解为将单位矩阵截取一部分)。如:

    1 >>> np.eye(3,4)
    2 array([[ 1.,  0.,  0.,  0.],
    3        [ 0.,  1.,  0.,  0.],
    4        [ 0.,  0.,  1.,  0.]])

    ndarray数据类型

    arr1 = np.array(seq,dtype = np.float64)

    arr1 = np.array(seq)

    arr1.astype(np.float64)

    astyp的功能可以去看文档。

    浮点数转化为整数为截取方式而非四舍五入。

  • 相关阅读:
    Android进程的优先级说明
    Android的有序广播和无序广播(解决安卓8.0版本之后有序广播的接收问题)
    Android开发中常用Dialog(普通弹窗&时间选择器&日历选择器)
    Android的显示意图和隐式意图总结
    Android的启动模式
    怎么评论一段php语言文本单词one-hot编码的健壮性
    python 基础知识,解决模板引擎实现原理流程
    SQL----EXISTS 关键字EXISTS基本意思
    omcat启动Publishing failed with multiple errors
    AngularJs directive详解及示例代码
  • 原文地址:https://www.cnblogs.com/qianslup/p/11160528.html
Copyright © 2020-2023  润新知