Python之Numpy模块中的方法详解

本文详细介绍了Python的Numpy模块,包括安装、数组的创建(如ndarray、arange、随机数创建)、ndarray对象的属性、数组的切片和索引,以及算术和数学函数。通过实例展示了Numpy在数据处理中的功能,如加减乘除、三角函数、四舍五入、统计函数(如平均值、中位数)等。
摘要由CSDN通过智能技术生成

Numpy(Numerical Python)是科学计算基础库,提供大量科学计算相关功能,比如数据统计,随机数生成等,其提供最核心类型为多维数组类型(ndarray),支持大量的维度数组与矩阵运算,numpy支持向量处理ndarray对象,提高程序运算速度。
一、安装

  1. 下载

     	pip install numpy
    
  2. arange函数测试环境安装

     	import numpy as np
     	a = np.arange(10)
     	print(a)
    
  3. 实例:

     # 检测numpy模块是否安装成功
     #导入numpy
     import numpy as np
     # 创建数组
     a = np.arange(10)
     print(a)
     print(type(a))
     # 对ndarray对象类进行向量处理
     print(np.sqrt(a))
     # 对列表中的元素开平方
     import math
     b = [3, 4, 9]
     # 定义存储开平方的结果的列表
     result = []
     # 遍历列表
     for i in b:
         result.append(math.sqrt(i))
     print(result)
     结果:
     [0 1 2 3 4 5 6 7 8 9]
     <class 'numpy.ndarray'>
     [0.         1.         1.41421356 1.73205081 2.         2.23606798
      2.44948974 2.64575131 2.82842712 3.        ]
     [1.7320508075688772, 2.0, 3.0]
    

二、数组的创建
(一)ndarray创建

  1. numpy模块的array函数可以生成多为数组。例如,如果要生成一个二维数组,需要向array函数传递一个列表类型的参数。每一个列表元素是一维的ndarray类型数组,作为二维数组的行。另外,通过ndarray类的shape属性可以获取的数组没一维的元素个数(元组形式),也可以通过shape[n]形式获得每一维的元素个数,其中n是维度,从0开始。

  2. 语法格式如下:
    numpy.array(object, type = None, opy = True, order= None, subok = False, ndmin = 0)
    实例:

     # 使用array创建数组
     
     import numpy as np
     
     # 使用array函数创建一维数组
     a = np.array([1, 2, 3, 4])
     print(a)
     print(type(a))
     
     # 使用array函数创建二维数组
     b = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
     print(b)
     print(type(b))
     
     # 使用array函数创建三维数组
     c = np.array([[[1, 2, 3], [4, 5 ,6], [7, 8, 9]]])
     print(c)
     print(type(c))
     
     # array函数中dtype的使用
     d = np.array([3, 4, 5], dtype=float)
     print(d)
     print(type(d))
     
     # array函数中ndmin的使用
     e = np.array([5, 6, 7], dtype=float, ndmin=3)
     print(e)
     print(type(e))
     结果:
     [1 2 3 4]
     <class 'numpy.ndarray'>
     [[1 2 3]
      [4 5 6]
      [7 8 9]]
     <class 'numpy.ndarray'>
     [[[1 2 3]
       [4 5 6]
       [7 8 9]]]
     <class 'numpy.ndarray'>
     [3. 4. 5.]
     <class 'numpy.ndarray'>
     [[[5. 6. 7.]]]
     <class 'numpy.ndarray'>
    

(二)arange创建
使用arange函数创建数值范围并返回ndarray对象,函数格式如下:
numpy.arange(start,stop,step,dtype)
参数说明:
start:起始值,默认为0
stop:终止值(不包含)
step:步长,默认为1
dtype:返回ndarray的数据类型,如果没有提供,则会使用输入数据的类型。

实例:

    # 使用arange创建数组
    
    import numpy as np
    
    # range的使用
    # 格式:range(start, end, step)
    a = list(range(1, 10))
    print(a)
    b = list(range(10))     # 默认从0开始,步长为1
    print(b)
    c = list(range(1, 10, 3))
    print(c)
    
    # arange创建数组
    # 使用arange创建1-10的数组
    a = np.arange(1, 11)
    print(a)
    
    # 设置步长
    b = np.arange(1, 11, 2)
    print(b)
    
    # 设置dtype
    c = np.arange(10, 20, 2, dtype=float)
    print(c)
    结果:
    [1, 2, 3, 4, 5, 6, 7, 8, 9]
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    [1, 4, 7]
    [ 1  2  3  4  5  6  7  8  9 10]
    [1 3 5 7 9]
    [10. 12. 14. 16. 18.]

(三)随机数创建
1.随机数
格式:
numpy.random.random(size=None)
**:该方法返回[0.0,1.0)范围(不包括1.0)的随机数
2.随机整数
格式:
numpy.random.randint(size=None)
3.正态分布创建
格式:
numpy.random.randn(d0,d1,…,dn)
**:randn函数返回一个或一组样本,具有标准正态分布(期望为0,方差为1)。
**:dn表示每个维度
**:返回值为指定维度的array
4.指定期望和方差的正态分布
格式:
np.random.normal(loc=3, scale=4, size=(2, 2, 3))
**:loc指的是期望
**:scale指的是方差

**:scale值得是形状
5.实例

# 使用随机数创建数组
import numpy as np

def randomTest():
    # 使用random创建一维数组[0.0,1.0)
    a = np.random.random(size=5)
    print(a)
    print(type(a))

    # 使用random创建二维数组
    b = np.random.random(size=(3, 4))
    print(b)

    # 使用random创建三维数组
    c = np.random.random(size=(2, 3, 4))
    print(c)

# 随机整数
def randomintTest():
    # 生成0-5之间的随机整数 一维
    a = np.random.randint(6, size=10)
    print(a)
    print(type(a))
    # 生成5-10之间的随机整数 二维
    b = np.random.randint(5, 11, size=(4, 3))   # 4行,3列
    print(b)
    # 生成5-10之间的随机整数 三维 类型是float
    c = np.random.randint(5, 11, size=(2, 4, 3))
    print(c)
    # dtype的使用
    d = np.random.randint(10, size=5)
    e = np.random.randint(10, size=5, dtype=np.int64)
    print(d)
    print("默认的dtype:", d.dtype)
    print(e)
    print(e.dtype)

# 创建标准的正态分布,期望为0,方差为1
def randnTest():
    # 创建一维的数组
    a = np.random.randn(4)
    print(a)

    # 创建二维的数组
    b = n
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值