当前位置:   article > 正文

【numpy模块上}——数据分析01

【numpy模块上}——数据分析01

介绍:

numpy就是一个便于科学计算的第三方库,常运用于数据分析和大量运算。比如矩阵等…

在这里插入图片描述

用处与特点:

  • 提供了n维数组(ndarray)
  • 数组由同质元素(相同的元素类型)构成,且元素数量(几行几列)是事先定好的。

构成:

  1. 轴(axes):类似于x轴、y轴。如图就是两个轴,第0轴和第1轴(轴从0开始数)

在这里插入图片描述

  1. 秩(rank,用ndim属性来获取)——:就是数组的维数,也是轴的数量(从1开始数)
  2. 大小(size):数组中元素的个数
  3. 形状(shape):就是数组有几行几列
  4. 类型(dtype):数组中元素的类型
  5. 元素大小(itemsize):数组中单个元素占用的字节数

在这里插入图片描述

对于多维数组的理解:用串糖葫芦来理解,二维数组的一个轴每穿过一个元素都是一维数组。
三维数组的一个轴每穿过一个元素都是二维数组。
那么四维数组的一个轴每闯过一个轴都是三维数组。同理类推...
在python的语法中,方括号中每一个元素是n维数组,它就是n+1维数组
  • 1
  • 2
  • 3
  • 4

导包:

一般都会对numpy库进行更名处理,便于之后使用

import numpy as np
  • 1

创建数组:

语法:

"""
注意:括号里面还要用中括号,因为至少是一个一维数组。中括号里面每一个元素由n维数组构成,
它就是n+1维数组。别忘了最外层永远有一个中括号
"""
变量名 = np.array([])
  • 1
  • 2
  • 3
  • 4
  • 5

演示:

arr = np.array([1,2,3])
arr1 = np.array([[1,2,3],[4,5,6]])#创建二维数组,每一个元素都是一维数组,所以它创建的就是二维数组
  • 1
  • 2

numpy常用方法:

常用属性查看:

arr = np.array([[1,2,3],[4,5,6]])
  • 1

获取秩的大小:

通过数组的ndim属性来获取秩的大小

print(arr.ndim) #2
  • 1

获取数组形状:

通过数组的shape属性来获取形状

print(arr.shape) #(2, 3)
  • 1

获取元素个数:

通过数组的size属性来获取元素个数

print(arr.size) #6
  • 1

获取元素类型:

通过dtype属性来获取元素类型

print(arr.dtype) #int32
  • 1

获取占用字节数:

通过数组的itemsize属性来获取单个元素的占用字节数

print(arr.itemsize) #4
  • 1

制定数据类型:

在括号里面添加dtype属性,注意等于的后面更改属性也要加上np.

arr1 = np.array([[6,7,8],[9,10,11]],dtype=np.int64) #指定类型
  • 1

创建数组的常用方法:

arange():

可以类比于range()函数,不同的是arange()支持浮点数。第一个参数是起始值,第二个参数是终止值(不包括),第三个参数是步长

实例演示:

import numpy as np
arr = np.arange(1,10,2)
arr1 = np.arange(10.0)
arr2 = np.arange(5)
print(arr)
print(arr1)
print(arr2)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

在这里插入图片描述

linspace():

可以创建均分的数组,默认包含终止值,第三个参数不是步长而是最终分割成的个数,可以是浮点数

实例演示:

import numpy as np
#把从1到10的数据之间分割成n份
arr = np.linspace(1,10,3)#分成三份
arr2 = np.linspace(1,10,7)#分成七份
arr3 = np.linspace(1,10,20)#分成二十份
print(arr)
print(arr2)
print(arr3)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

在这里插入图片描述

ones():

用来创建全是1的数组,括号里写的是数组的形状,默认支持浮点数

实例演示:

import numpy as np
arr = np.ones(5)
arr1 = np.ones((2,3))#别忘了数组的形状要用小括号包裹
print(arr)
print(arr1)
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

zeros():

用来创建全是0的数组,括号里写的是数组的形状,默认支持浮点数

实例演示:

import numpy as np
arr = np.zeros(5)
arr1 = np.zeros((2,3))#别忘了数组的形状要用小括号包裹
print(arr)
print(arr1)
  • 1
  • 2
  • 3
  • 4
  • 5

full():

用来创建全是指定参数的数组,第一个参数写的是数组的形状,第二个参数写的是指定数默认支持浮点数

实例演示:

import numpy as np
arr = np.full((2,3),9)
arr1 = np.full((4,7),3.3)
print(arr)
print(arr1)
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

eye():

用来创建N行M列的单位数组,M省略时创建N行N列的单位数组(从第一列开始依次变1,其他都为0)

实例演示:

import numpy as np
arr = np.eye(3,3)
arr1 = np.eye(4,5)
print(arr)
print(arr1)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在这里插入图片描述

random.rand():

用来创建n维数组,元素为0-1之间的随机小数。里面的参数写的是数组的形状,有几个参数就是几维数组,不需要写括号

不写参数:
#随机生成0-1之间的小数
arr = np.random.rand()
print(arr)

  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

二维:
import numpy as np
arr = np.random.rand(2,3)#第0轴元素数量为2,第1轴的元素数量为3.总共是二维
print(arr)

  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

三维:
import numpy as np
arr = np.random.rand(2,3,3)#第0轴元素数量为2,第1轴的元素数量为3.第2轴的元素数量为3总共是三维
print(arr)

  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

至于更多维度就以此类推

随机值范围为a-b:
import numpy as np
a = 5
b = 10
arr = a + (b-a) * np.random.rand(2,3) #随机数范围为5-10
print(arr)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在这里插入图片描述

numpy中支持的数值型的数据类型:

数据类型(Data Type)描述(Description)
int8, uint8符号和无符号的8位(1个字节)整型
int16, uint16符号和无符号的16位(2个字节)整型
int32, uint32符号和无符号的32位(4个字节)整型
int64, uint64符号和无符号的64位(8个字节)整型
float16半精度浮点数:符号位,5位指数,10位尾数
float32单精度浮点数:符号位,8位指数,23位尾数
float64 or float双精度浮点数:符号位,11位指数,52位尾数
complex64两个32位浮点数(实数和虚数)
complex128 or complex两个64位浮点数(实数和虚数)

注意: int, float和complex_代表与平台相关的标准整数,浮点数和复数类型,这些类型在32位平台上和int32, float32, complex64一样,64位平台上和int64,float64,complex128一样。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/662512
推荐阅读
相关标签
  

闽ICP备14008679号