介绍numpy数组

作者: 心际花园 | 来源:发表于2022-12-05 13:19 被阅读0次

    课程内容

    NumPy和Python生态系统

    NumPy是Python科学计算的核心库。

    基本的Python库,如pandas、SciPy和Matplotlib,都构建在NumPy的API之上。

    机器学习库如TensorFlow和scikit-learn也是如此,它们使用NumPy数组作为输入。

    任何在Python中使用数字的人都会遇到NumPy数组。

    那么它们是什么,我们如何创造它们?

    Numpy数组

    数组是 NumPy 中的主要对象;

    它是一个保存数据的网格状结构。

    数组可以有任意数量的维度,每个维度可以是任意长度。

    导入Numpy

    要开始使用,请导入 NumPy,将导入别名为 np。

    import numpy as np

    从列表创建一维数组

    我们可以通过将列表作为参数传递给 np.array()函数来从 Python 列表创建数组。

    此数组的数据类型是 NumPy n-d 数组或 n 维数组。

    
    python_list = [3, 2, 5, 8, 4, 9, 7, 6, 1]
    
    array = np.array(python_list)
    
    array
    
    type(array)
    
    

    从列表创建 2D 数组

    要创建二维数组,请向 npd.array() 传递列表的列表。

    如您所料,列表的列表将生成一个二维数组。

    
    python_list_of_lists =[[3,2,5],[9,7,1],[4,3,6]]
    
    np.array(python_list_of_lists)
    
    

    数组 vs. Python 列表

    为什么使用数组而不是列表?

    虽然 Python 列表可以包含许多不同的数据类型,但 NumPy 数组中的所有元素都必须是相同的数据类型

    这使得 NumPy 非常高效:NumPy 不需要检查数组中每个元素的数据类型,因为它们必须都相同。

    只有一种数据类型也意味着 NumPy 数组在内存中占用的空间比存储为 Python 列表的相同信息要少。

    从头开始创建数组

    我们已经看到了如何从 Python 列表创建 NumPy 数组。

    我们还可以使用 np.zero()np.random.random()np.arange() 等函数从头开始创建它们。

    创建数组: np.zeros()

    np.zeros()创建一个充满零的数组。

    我们可以像使用空的 Python 列表一样使用 zeros 数组,稍后用数据填充它。

    我们使用整数元组告诉 np.zeros() 所需数组的形状,每个整数组代表给定维度的长度。

    元组是用于存储数据集合的 Python 数据类型,类似于列表。

    元组是使用括号而不是用于列表的方括号创建的。

    在这里,当 np.zeros((5,3)) 被赋予一个由 5 和 3 组成的元组时,它会创建一个包含五行和三列的数组。

    创建数组:np.random.random()

    np.random.random() 也接受具有所需数组形状的元组。

    数组将由 0 到 1 之间的随机浮点数组成。

    为什么np.random.random()这样称呼,而不仅仅是np.random()

    这是因为 np.random.random() 是 NumPy 随机模块中的一个函数,其中包含用于随机采样的有用函数。

    np.random.random((2,4))

    创建数组: np.arange()

    np.arange()根据给定的开始和停止值创建一个均匀分布的数字数组。

    默认情况下,np.arange() 创建一个连续整数数组。

    起始值包含在输出数组中,但停止值不包含在内。

    如果范围从零开始,则可以省略起始值。

    如果传递第三个参数,则将其解释为步长值。

    现在,元素之间的所需距离为 3。np.range()对于绘图特别有用!

    np.arange(-3,4)

    np.arange(4)

    np.arange(-3,4,3)

    
    from matplotlib import pyplot as plt
    
    plt.scatter(np.arange(0,7),np.arange(-3,4))
    
    plt.show()
    
    

    开始练习

    让我们将您的新技能用于您可能熟悉的网格状数据:数独游戏!

    【一句话总结】

    本节主要介绍Numpy数组和如何创建numpy数组。

    什么是Numpy数组

    数组是 NumPy 中的主要对象。

    数组是一个保存数据的网格状结构。

    数组可以有任意数量的维度,每个维度可以是任意长度。

    数组元素的数据类型都一样,不需要检查数据类型,内存也小。

    如何导入numpy

    import numpy as np

    如何创建numpy

    从列表创建 np.array([])

    np.zero((3,5))创建5行3列的0数组

    np.random.random((2,4)) 创建2行4列的随机浮点数组

    np.arange(-3,4,2) 创建从-3开始不包括4,步长为2的一维连续整数数组。

    在可视化中创建图表时特别有用。

    相关文章

      网友评论

        本文标题:介绍numpy数组

        本文链接:https://www.haomeiwen.com/subject/prxifdtx.html