numpy入门实战教程(基础篇)

本文是Numpy入门教程的基础篇,涵盖了numpy数组的概览、创建、打印、基本运算、通用函数(UFUNC)以及形状操作。讲解了如何通过array函数创建数组,数组的形状、秩、dtype等属性,还介绍了索引、切片和迭代,以及如何改变数组形状、组合数组、分割数组。此外,提到了numpy的常用函数和方法。
摘要由CSDN通过智能技术生成
Abstract:numpy入门实战教程,附代码。

1.概览

  • numpy的主要对象是同种元素的多维数组。这是一个所有元素都是同一种类型、通过同一个正整数元组索引的元素表格(通常元素是数字)

  • 维度(dimensions):轴

  • 轴的个数:秩(rank)

    例如,在3D空间一个点的坐标[1, 2, 3]是一个秩为1的数组,因为它只有一个轴。那个轴长度为3.又例如,在以下例子中,数组的秩为2(它有两个维度).第一个维度长度为2,第二个维度长度为3.

    [[ 1., 0., 0.], [ 0., 1., 2.]]

  • 数组类:ndarray(数组),注意numpy.array和标准Python库类array.array并不相同,后者只处理一维数组和提供少量功能。更多重要ndarray对象属性有:

    • ndarray.ndim ——数组轴(秩)的个数

    • ndarray.shape ——数组的维度;是一个指示数组在每个维度上大小的整数元组。例如一个n排m列的矩阵,它的shape属性将是(2,3),这个元组的长度显然是秩,即维度或者ndim属性

    • ndarry.size——数组元素的总个数

    • ndarray.dtype ——用来描述数组中元素类型的对象,可以通过创造或指定dtype使用标准Python类型。另外Numpy提供它自己的数据类型。

    • ndarray.itemsize ——数组中每个元素的字节大小。例如,一个元素类型为float64的数组itemsiz属性值为8(=64/8),又如,一个元素类型为complex32的数组item属性为4(=32/8).

    • ndarray.data——包含实际数组元素的缓冲区,通常我们不需要使用这个属性,因为我们总是通过索引来使用数组中的元素

      # input1
      from numpy import*
      a = arrange(15).reshape(3,5)
      print a
      
      # output1
      array([[ 0,  1,  2,  3,  4],
             [ 5,  6,  7,  8,  9],
             [10, 11, 12, 13, 14]])
      
      # input2
      print a.shape
      
      # output2
      (3,5)
      
      # in3
      print a.ndim
      
      # out3
      2
      
      # in4
      print a.dtype.name
      
      # out4
      'int64'
      
      # in5
      print a.itemsize
      
      # out5
      8
      
      # in6
      print a.size
      
      # in7
      print tyep(a)
      
      # out7
      numpy.ndarray
      
      # in8
      b = array([6, 7, 8])
      b 
      
      # out8
      array([6,7,8])
      
      # in9
      print type(b)
      
      # out
      numpy.ndarray

2.创建数组

使用array函数从常规的python列表和元组创造数组,所创建的数组类型由原序列中的元素类型推导而来。

    # create array
    b = array([(1,2,3,4),(5,6,7,8)],dtype=complex) # 默认创建的数组类型(dtype)都是float64
    print b
  
    zeros((3,4))
    print zeros
  
    ones((2,3,4),dtype=int16)
  
    empty((2,3))
    print empty
  
    print arange(10,30,5)
    print arange(0,2,0.3)
    # 当arange使用浮点数参数时,由于有限的浮点数精度,通常无法预测获得的元素个数。
    # 因此,最好使用函数linspace去接收我们想要的元素个数来代替用range来指定步长

3.打印数组

当打印数组时,numpy会以类似嵌套列表的形式显示,呈以下布局

  • 最后的轴从左到右打印

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值