• numpy学习(数组的定义及基础属性)


    NumPy最重要的一个特点就是其N维数组对象(即ndarray),该对象是一个快速而灵活的大数据集容器。你可以利用这种数组对整块数据执行一些数学运算,ndarray是一个通用的同构数据多维容器,也就是说,其中的所有元素必须是相同类型的。每个数组都有一个shape(一个表示各维度大小的元组)和一个dtype(一个用于说明数组数据类型的对象)。

    数组的创建

    • 通过array方法创建:

    创建ndarray;

    查看ndarray的维度:

    两维数组:通过ndim属性查看

    还是一个两维数组,不是三维:

    为什么只有两维而不是三维?因为只嵌套了两层,而且这也是3x3的一个陈列,相当于只有两个轴,两个轴就是两个维度,看看三维是什么样的?俏不俏!

    多维也就是在外面嵌套一层,当然这个三维数组中只有一个元素。

    查看维度的大小,如下只有两个维度,所以对应两个大小:通过shape属性查看

    除非显式说明(稍后将会详细介绍),np.array会尝试为新建的这个数组推断出一个较为合适的数据类型。

    除np.array之外,还有一些函数也可以新建数组。比如,zeros和ones分别可以创建指定长度或形状的全0或全1数组。empty可以创建一个没有任何具体值的数组。要用这些方法创建多维数组,只需传入一个表示形状的元组即可:

    一维:

    二维:

    empty可以创建一个没有任何具体值的数组。要用这些方法创建多维数组,只需传入一个表示形状的元组即可:

    认为np.empty会返回全0数组的想法是不安全的。很多情况(如前所示),它返回的都是一些未初始化的垃圾值。

    arange是Python内置函数range的数组版:

    下表列出了一些数组创建函数。由于NumPy关注的是数值计算,因此,如果没有特别指定,数据类型基本都是float64(浮点数)。

    ndarray的数据类型dtype(数据类型)是一个特殊的对象,它含有ndarray将一块内存解释为特定数据类型所需的信息:

    数值型dtype的命名方式:一个类型名(如float或int),后面跟一个用于表示各元素位长的数字。标准的双精度浮点值(即Python中的float对象)需要占用8字节(即64位)。因此,该类型在NumPy中就记作float64。表4-2列出了NumPy所支持的全部数据类型。

    可以通过ndarray的astype方法显式地转换其dtype

    通过astype不会改变源数组的数据类型,通过赋值给变量可以复制源数据并且数据类型为改变后的类型

    调用astype无论如何都会创建出一个新的数组(原始数据的一份拷贝),即使新dtype跟老dtype相同也是如此。警告:注意,浮点数(比如float64和float32)只能表示近似的分数值。在复杂计算中,由于可能会积累一些浮点错误,因此比较操作只能在一定小数位以内有效。

    可通过另一种方式改变数组的数据类型:

    使用4-2中的类型代码,以下为为11个长度的字符串

  • 相关阅读:
    封装( 增删改 查 )类
    php注释规范
    php访问mysql数据库
    php 文件限速下载代码
    jQuery鼠标事件汇总
    权限管理
    文件管理 打开-返回上级
    文件操作
    简单的文件上传
    ajax XML
  • 原文地址:https://www.cnblogs.com/anner-nie/p/8523743.html
Copyright © 2020-2023  润新知