Python疑难杂症(14)---Numpy知识集合(一),介绍Numpy的概念、创建、数组运算等内容,对于该模块有个初步的认识。

python的模块numpy(一)

NumPy模块是Python语言用于科学计算、机器学习、数据分析的核心程序包之一,提供了强大的数组对象和数学函数,它简化了向量和矩阵的操作处理,。Python 的一些主要模块软件包象 scikit-learn、SciPy、pandas 和 tensorflow都以 NumPy 作为基础运算和架构部分

数值计算:NumPy提供了高效的多维数组对象和一组用于操作这些数组的函数,使得进行数值计算变得更加高效和方便。它支持向量化操作和广播功能,可以在大规模数据集上进行快速数值计算,例如线性代数运算、傅里叶变换、随机数生成等。

NumPy主要的用途如下:

科学计算:NumPy是许多科学计算库的基础,它提供了高性能的数组操作和数学函数,使得科学计算任务更加简洁和高效。许多科学领域,如物理学、化学、生物学等,都可以使用NumPy进行数据处理和计算。

图像处理:NumPy可以用于图像处理任务,因为图像可以表示为多维数组。NumPy提供了各种功能,如图像的读取、保存和处理,包括图像的缩放、裁剪、旋转、滤波等操作。

机器学习:NumPy在机器学习领域也有广泛的应用。它作为Python中的数值计算库,为机器学习算法提供了高效的数据结构和操作。例如,可以使用NumPy数组存储和处理训练数据集、特征工程和模型评估等。

数值模拟和科学计算:NumPy提供了高效的数据结构和运算功能,用于数值模拟和科学计算。许多科学和工程领域使用NumPy来解决物理、化学、工程等领域的数值计算问题。

数组操作和索引:NumPy提供了广泛的数组操作和索引功能,可以对数组进行切片、索引、连接、重塑等操作。这使得在处理大规模数据集时更加高效和灵活。

模块导入:

Numpy是一个外置模块包,在使用前必须提前装入

import numpy as np

而numpy使用的基础是其建立了一个新的数据类型numpy类型,称为数组,其和list类表数据类型类似,但是和list有着本质的区别。

1、使用Array创建一维或者多维

numpy.array(object, dtype=None, *, copy=True, order='K', subok=False, ndmin=0, like=None)

Dtype:生成数组所需的数据类型。 

ndim:指定生成数组的最小维度数。

例如:一维

import numpy as np

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

print(type(arr1))

arr1

输出:

<class 'numpy.ndarray'>

array([1, 2, 3, 4, 5])

多维:

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

输出:array([[1, 2],

       [3, 4]])

2、生成具有初始值的数组ones()、zeros() 和 random.random() 等方法

numpy.zeros(shape, dtype=float, order='C', *, like=None)

shape:阵列的形状。

Dtype:生成数组所需的数据类型。' int '或默认' float '

例如:

ar1=np.ones((3,2), dtype=int)

print(ar1)

ar2=np.zeros((4,3,2),dtype=float)

print(ar2)

ar3=np.random.random(4)

print(ar3)

输出:[[1 1]

 [1 1]

 [1 1]]

[[[0. 0.]

  [0. 0.]

  [0. 0.]]

 [[0. 0.]

  [0. 0.]

  [0. 0.]]

 [[0. 0.]

  [0. 0.]

  [0. 0.]]

 [[0. 0.]

  [0. 0.]

  [0. 0.]]]

[0.73037958 0.03280601 0.02007473 0.81910797]

3、数组运算

NumPy.array创建的数据这种类型,在计算时,可以简单的通过数组和数组(维数相同)、数组和常数之间直接运算(主要包括+、-、*、\)得到结果数据,就像单个数值运算那样简单,这个运算是算术运算,有别于矩阵运算。多维数组和一维数据运算,运算使用广播机制完成。

例如上面的三个数据,具体输出见前面内容

ar1=np.ones((3,2), dtype=int)

print(ar1)

ar2=np.zeros((4,3,2),dtype=float)

print(ar2)

ar3=np.random.random(4)

print(ar3)

进行运算结果如下:

ar1+ar2

输出:array([[[1., 1.],

        [1., 1.],

        [1., 1.]],

       [[1., 1.],

        [1., 1.],

        [1., 1.]],

       [[1., 1.],

        [1., 1.],

        [1., 1.]],

       [[1., 1.],

        [1., 1.],

        [1., 1.]]])

ar1+ar3

输出:ValueError                                Traceback (most recent call last)

<ipython-input-17-39c72b2b72e0> in <module>

----> 1 ar1+ar3

ValueError: operands could not be broadcast together with shapes (3,2) (4,)

此处报错,因为没有相同的维数。

和常数进行运算:

ar4=np.ones((3,2), dtype=int)

ar4

输出:array([[1, 1],

       [1, 1],

       [1, 1]])

ar4+6

输出:array([[7, 7],

       [7, 7],

       [7, 7]])

先介绍到这里,如果知识有用,欢迎评论、收藏、点赞等,也欢迎学习的小伙伴交流。

  • 27
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用Docker时,可能会遇到一些疑难杂症。其中,一些常见的问题及解决办法如下: 1. 运行docker version时报错"Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?"这个错误通常是由于Docker守护进程未启动引起的。可以通过运行以下命令来启动守护进程:`sudo systemctl start docker`(适用于基于systemd的Linux发行版)。如果您不是使用systemd,请根据您的操作系统和版本来启动Docker守护进程。 2. 使用yum安装Docker时报错"Cannot retrieve metalink for repository: epel. Please verify its path and try again."这个错误通常是由于epel源(Extra Packages for Enterprise Linux)未正确安装或配置引起的。您可以尝试以下解决办法: - 首先,确保您的系统与互联网连接正常。 - 检查您的操作系统和版本,并根据官方文档正确安装epel源。 - 如果您已经安装了epel源,但仍然遇到这个错误,请尝试更新epel源并再次运行安装命令。 这些是一些常见的Docker疑难杂症及其解决办法。当然,Docker的使用过程中可能还会遇到其他问题,您可以参考官方文档、社区论坛或搜索引擎来寻找更多解决办法。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [docker 疑难杂症](https://blog.csdn.net/weixin_33805992/article/details/92266045)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [docker常见疑难杂症](https://blog.csdn.net/weixin_45776707/article/details/103142818)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值