python NumPy入门篇

在这里插入图片描述

NumPy介绍

什么是NumPy?

NumPy是一个用于处理数组的Python库。

它还具有在线性代数,傅里叶变换和矩阵领域工作的函数。

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

NumPy 代表 Numeric Python。

为什么使用NumPy?

在Python中,我们有用于数组目的的列表,但它们的处理速度很慢。

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

NumPy中的数组对象被称为,它提供了许多支持函数,使工作变得非常容易。ndarray``ndarray

数组在数据科学中非常频繁地使用,其中速度和资源非常重要。

为什么NumPy比Lists快?

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

此行为在计算机科学中称为引用位置。

这是NumPy比列表更快的主要原因。此外,它还经过优化,可与最新的CPU架构配合使用

NumPy是用哪种语言编写的?

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

NumPy代码库在哪里?

NumPy的源代码位于此github存储库 https://github.com/numpy/numpy

NumPy 安装

安装 NumPy

pip install numpy

尝试使用 NumPy

  • Import NumPy

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

    例子:

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

    响应结果:

    [1 2 3 4 5]
    
  • 别名导入:import numpy as np

    例子:

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

    响应结果:

    [1 2 3 4 5]
    

检查数字Py版本

版本字符串存储在属性下。__version__

import numpy as np

print(np.__version__)

响应结果:

1.22.4

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]
<class 'numpy.ndarray'>

要创建一个ndarray ,我们可以将列表,元组或任何类似数组的对象传递到方法array()中,它将转换为
ndarray

import numpy as np

arr = np.array((1, 2, 3, 4, 5))

print(arr)

运行结果:

[1 2 3 4 5]

数组中的维度

数组中的维度是数组深度的一个级别(嵌套数组)。

嵌套数组: 是以数组作为其元素的数组。

0-D 阵列

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

例: 创建值为 42 的 0-D 数组

import numpy as np

arr = np.array(42)

print(arr)

运行结果:

42

1-D 阵列

以 0-D 数组作为其元素的数组称为一维或一维数组。

这些是最常见和最基本的数组。

例 : 创建一个包含值 1,2,3,4,5 的一维数组

import numpy as np

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

print(arr)

运行结果:

[1 2 3 4 5]

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 6]]

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 6]]

 [[1 2 3]
  [4 5 6]]]

查看数组维度

NumPy Arrays提供了一个属性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)

运行结果:

0
1
2
3

高维数组

一个数组可以具有任意数量的维度。

创建数组时,可以使用参数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]]]]]
number of dimensions : 5
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

佛系的老肖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值