Python数据分析之Numpy库的使用详解

编辑: admin 分类: python 发布时间: 2021-11-14 来源:互联网
目录
  • 前言
  • 🧡Numpy库介绍
  • 💙ndarray 类常用属性
  • 💚Numpy常用函数
    • 🍓array函数
    • 🥝arange()函数和linspace()函数
    • 🍎zeros(),empty和ones()
    • 🍒ndarray 类的索引和切片方法
  • 🍇numpy 库运算函数
    • 总结

      前言

      由于自己并不以Python语言为主,这里只是简单介绍一下Numpy库的使用

      提示:以下是本篇文章正文内容

      🧡Numpy库介绍

      numpy 库处理的最基础数据类型是由同美国服务器http://www.558idc.com/mg.html种元素构成的多维数组(ndarray), 简称" 数组”,数组中所有元素的类型必须相同, 数组中元素可以用整数索引, 序号从0开始。 ndarray类型的维度(dimensions)叫做轴(axes), 轴的个数叫做秩(rank)。 一维数组的秩为1, 二维数组的秩为2, 二维数组 相当于由两个一维数组构成

      numpy 库概述:
      由于numpy 库中函数较多且命名容易与常用命名混淆,建议采用如下方式引用numpy 库:

      import numpy as np
      

      其中, as保留字与import一起使用能够改变后续代码中库的命名空间, 有助于提高代码可读性。 简单说, 在程序的后续部分中, np代替numpy。

      💙ndarray 类常用属性

      创建一个简单的数组后, 可以查看ndarray类型有一些基本属性

      1.ndarray.ndim
      数组轴的个数,在python的世界中,轴的个数被称作秩

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

      3.ndarray.size
      数组元素的总个数,等于shape属性中元组元素的乘积。

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

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

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

      import numpy as np #引入numpy模块
      a = np.ones((4,5))
      print(a)
      print('数据轴个数: ',a.ndim)
      print('每个维度的数据个数: ',a.shape)
      print('数据类型',a.dtype)
      

      # 结果
      [[1. 1. 1. 1. 1.]
      [1. 1. 1. 1. 1.]
      [1. 1. 1. 1. 1.]
      [1. 1. 1. 1. 1.]]
      数据轴个数:  2
      每个维度的数据个数:  (4, 5)
      数据类型 float64

      小结:

      在这里插入图片描述

      💚Numpy常用函数

      🍓array函数

      函数原型:

      np.array([x,y,x],dtype=int)  # 从列表和元组中创建数组
      

      功能:array函数将列表转矩阵

      import numpy as np #引入numpy模块
      array=np.array([[1,2,3], #列表转矩阵
      [4,5,6]])
      print(array)
      print('number of dim',array.ndim) #输出矩阵数据轴数
      print('size',array.size) #输出矩阵总元素个数

      # 结果
      [[1 2 3]
      [4 5 6]]
      number of dim 2
      size 6

      🥝arange()函数和linspace()函数

      函数原型:

      np.arange(x,y,i)   # 创建一个由x到y,以i为步长的数组
      np.linspace(x,y,n)  # 创建一个由x到y,等分为n个元素的数组
      
      import numpy as np #引入numpy模块
      a=np.arange(1,12,2)# np.arange从1到12,间隔为2
      print(a)
      #从2到12,生成随机6个数,并控制为2行3列
      b=np.linspace(2,12,6).reshape(2,3)
      print(b)

      # 结果:
      [ 1 3 5 7 9 11]
      [[ 2. 4. 6.]
      [ 8. 10. 12.]]

      🍎zeros(),empty和ones()

      功能:创建都是初始值相同元素(0,1)的数组
      函数原型:

      np.ones((m,n),dtype)  # 创建一个m行n列的全为1的数组
      np.zeros((m,n),dtype)  # 创建一个m行n列的全为0的数组
      np.empty((m,n),dtype)  # 创建一个m行n列的全为0的数组
      
      import numpy as np #引入numpy模块
      a=np.zeros((5,8)) #元素都是0
      b=np.ones((5,6)) #元素都是1
      print(a)
      print(b)
      

      # 结果:
      [[0. 0. 0. 0. 0. 0. 0. 0.]
      [0. 0. 0. 0. 0. 0. 0. 0.]
      [0. 0. 0. 0. 0. 0. 0. 0.]
      [0. 0. 0. 0. 0. 0. 0. 0.]
      [0. 0. 0. 0. 0. 0. 0. 0.]]
      [[1. 1. 1. 1. 1. 1.]
      [1. 1. 1. 1. 1. 1.]
      [1. 1. 1. 1. 1. 1.]
      [1. 1. 1. 1. 1. 1.]
      [1. 1. 1. 1. 1. 1.]]

      🍒ndarray 类的索引和切片方法

      和列表的索引差不多的

      在这里插入图片描述

      import numpy as np #引入numpy模块
      a = np.random.rand(5,3)#生成随机5行3列数组
      print(a)
      print('获取第2行',a[2]) #获取第2行
      print('切片',a[1:3]) #切片, 1到3行,不包括3
      print('切片',a[-5:-2:2]) #切片,从后向前,步长为2

      # 结果
      [[0.53469047 0.47559129 0.65865181]
      [0.89942399 0.66683114 0.55181635]
      [0.11989817 0.06055933 0.56880058]
      [0.95744499 0.94814163 0.2155053 ]
      [0.95179242 0.61544664 0.40876683]]
      获取第2行 [0.11989817 0.06055933 0.56880058]
      切片 [[0.89942399 0.66683114 0.55181635]
      [0.11989817 0.06055933 0.56880058]]
      切片 [[0.53469047 0.47559129 0.65865181]
      [0.11989817 0.06055933 0.56880058]]

      🍇numpy 库运算函数

      在这里插入图片描述

      总结

      提示:这里对文章进行总结:

      numpy 库还包括三角运算函数、 傅里叶变换、 随机和概率分布、 基本数值统计、 位运算、 矩阵运算等非常丰富的功能, 在使用时可以到官方网站查询

      在这里插入图片描述

      python基础查表

      在这里插入图片描述

      到此这篇关于Python数据分析之Numpy库的使用详解的文章就介绍到这了,更多相关Python 数据分析内容请搜索hwidc以前的文章或继续浏览下面的相关文章希望大家以后多多支持hwidc!