• 【numpy简介、入门、数组创建】


    在这里插入图片描述

    🤵‍♂️ 个人主页@老虎也淘气 个人主页
    ✍🏻作者简介:Python学习
    🐋 希望大家多多支持我们一起进步!😄
    如果文章对你有帮助的话,
    欢迎评论 💬点赞👍🏻 收藏 📂加关注

    什么是 NumPy?

    NumPy 是用于处理数组的 python 库。

    它还拥有在线性代数、傅立叶变换和矩阵领域中工作的函数。

    NumPy 由 Travis Oliphant 于 2005 年创建。它是一个开源项目,您可以自由使用它。

    NumPy 指的是数值 Python(Numerical Python)。

    为何使用 NumPy?

    在 Python 中,我们有满足数组功能的列表,但是处理起来很慢。

    NumPy 旨在提供一个比传统 Python 列表快 50 倍的数组对象。

    NumPy 中的数组对象称为 ndarray,它提供了许多支持函数,使得利用 ndarray 非常容易。

    数组在数据科学中非常常用,因为速度和资源非常重要。

    数据科学:计算机科学的一个分支,研究如何存储、使用和分析数据以从中获取信息

    为什么 NumPy 比列表快?

    与列表不同,NumPy 数组存储在内存中的一个连续位置,因此进程可以非常有效地访问和操纵它们。

    这种行为在计算机科学中称为引用的局部性。

    这是 NumPy 比列表更快的主要原因。它还经过了优化,可与最新的 CPU 体系结构一同使用。

    NumPy 用哪种语言编写?

    NumPy 是一个 Python 库,部分用 Python 编写,但是大多数需要快速计算的部分都是用 C 或 C ++ 编写的。

    NumPy 代码库在哪里?

    NumPy 的源代码位于这个 github 资料库中:资料库
    github:使许多人可以在同一代码库上工作。

    NumPy 入门

    安装 NumPy

    如果您已经在系统上安装了 Python 和 PIP,那么安装 NumPy 非常容易。

    请使用这条命令安装它:

    C:\Users\Your Name>pip install numpy
    
    • 1

    导入 NumPy

    安装 NumPy 后,通过添加 import 关键字将其导入您的应用程序:

    import numpy
    
    • 1

    实例

    import numpy 
    
    arr = numpy.array([1, 2, 3, 4, 5]) 
    
    print(arr)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    NumPy as np

    NumPy 通常以 np 别名导入。

    别名:在 Python 中,别名是用于引用同一事物的替代名称。

    请在导入时使用 as 关键字创建别名:

    import numpy as np
    
    
    • 1
    • 2

    现在,可以将 NumPy 包称为 np 而不是 numpy。

    实例

    import numpy as np 
    
    arr = np.array([1, 2, 3, 4, 5]) 
    
    print(arr)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    检查 NumPy 版本

    版本字符串存储在 version 属性中。

    实例

    import numpy as np
    
    print(np.__version__)
    
    • 1
    • 2
    • 3

    numpy数组创建

    创建 NumPy ndarray 对象

    NumPy 用于处理数组。 NumPy 中的数组对象称为 ndarray。

    我们可以使用== array() 函数创建一个 NumPy ndarray 对象。==

    实例

    import numpy as np 
    
    arr = np.array([1, 2, 3, 4, 5])
    
    print(arr)
    
    print(type(arr))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    type(): 这个内置的 Python 函数告诉我们传递给它的对象的类型。像上面的代码一样,它表明 arr 是 numpy.ndarray 类型。

    要创建 ndarray,我们可以将列表、元组或任何类似数组的对象传递给 array() 方法,然后它将被转换为 ndarray:

    实例
    使用元组创建 NumPy 数组:

    import numpy as np 
    
    arr = np.array((1, 2, 3, 4, 5))
    
    print(arr)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    数组中的维

    数组中的维是数组深度(嵌套数组)的一个级别。
    嵌套数组指的是将数组作为元素的数组。

    0-D 数组

    0-D 数组,或标量(Scalars),是数组中的元素。数组中的每个值都是一个 0-D 数组。

    实例
    用值 61 创建 0-D 数组:

    import numpy as np
    
    arr = np.array(61)
    
    print(arr)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    1-D 数组

    其元素为 0-D 数组的数组,称为一维或 1-D 数组。

    这是最常见和基础的数组。

    实例
    创建包含值 1、2、3、4、5、6 的 1-D 数组:

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

    2-D 数组

    其元素为 1-D 数组的数组,称为 2-D 数组。

    它们通常用于表示矩阵或二阶张量。

    NumPy 有一个专门用于矩阵运算的完整子模块 numpy.mat。

    实例
    创建包含值 1、2、3 和 4、5、6 两个数组的 2-D 数组:

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

    3-D 数组

    其元素为 2-D 数组的数组,称为 3-D 数组。

    实例
    用两个 2-D 数组创建一个 3-D 数组,这两个数组均包含值 1、2、3 和 4、5、6 的两个数组:

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

    检查维数?

    NumPy 数组提供了 ndim 属性,该属性返回一个整数,该整数会告诉我们数组有多少维。

    实例
    检查数组有多少维:

    import numpy as np
    
    a = np.array(42)
    b = np.array([1, 2, 3, 4, 5])
    c = np.array([[1, 2, 3], [4, 5, 6]])
    d = np.array([[[1, 2, 3], [4, 5, 6]], [[1, 2, 3], [4, 5, 6]]])
    
    print(a.ndim) 
    print(b.ndim) 
    print(c.ndim) 
    print(d.ndim)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    更高维的数组

    数组可以拥有任意数量的维。

    在创建数组时,可以使用 ndmin 参数定义维数。

    实例
    创建一个有 5 个维度的数组,并验证它拥有 5 个维度:

    import numpy as np
    
    arr = np.array([1, 2, 3, 4], ndmin=5)
    
    print(arr)
    print('number of dimensions :', arr.ndim)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
  • 相关阅读:
    基于若依ruoyi-nbcio增加flowable流程待办消息的提醒,并提供右上角的红字数字提醒(六)
    【入门】上了大学,最好了解一点计算机视觉
    嵌入式养成计划-43----QT QMainWindow中常用类的使用--ui界面文件--资源文件的添加--信号与槽
    luogu-P1462 通往奥格瑞玛的道路 && ybt-修建道路【最短路+二分】
    BUUCTF·[WUSTCTF2020]B@se1·WP
    python中的函数和类的区别
    6.typescript类
    html页面广告5秒之后跳过
    [BJDCTF2020]ZJCTF,不过如此
    Android开发基础——Fragment实践
  • 原文地址:https://blog.csdn.net/m0_66106755/article/details/128200603