numpy的安装与使用

article/2025/10/13 0:49:33

 

 

文章目录

前言

一、numpy是什么?

1、Numpy的数据结构

1.1 元数据(metadata)

1.2 实际数据

2、ndarray数组对象的特点

3、Numpy的优点

二、安装numpy

三、开始使用

3.1 引入库

3.2 查看numpy安装版本

3.3 牛刀小试

3.4 numpy VS list

 

总结

 


前言

本文就主要讲解下numpy的安装和简单使用,后续会完善numpy的使用方法


提示:以下是本篇文章正文内容,下面案例可供参考

一、numpy是什么?

NumPy(Numerical Python的简称),是科学计算基础的一个库,它提供了一个高性能的多维数组对象ndarray,以及大量的库函数和操作,可以帮助程序员轻松地进行数值计算,广泛应用于机器学习模型、图像处理和计算机图形学、数学任务等领域。提供了大量关于科学计算的相关功能,例如,线性变换,数据统计,随机数生成等。其提供的最核心的类型为多维数组类型(ndarray)。

NumPy是基于c语言开发,所以这使得NumPy的运行速度很快,高效率运行就是NumPy的一大优势。Numpy对矩阵运算进行了优化,使我们能够高效地执行线性代数运算,使其非常适合解决机器学习问题。SciPy(Scientific Python)、Mat-plotlib(plotting library)、Scikit-learn 等都在一定程度上依赖NumPy。与Python列表相比,Numpy具有的另一个强大优势是具有大量优化的内置数学函数。这些函数使你能够非常快速地进行各种复杂的数学计算,并且用到很少代码(无需使用复杂的循环),使程序更容易读懂和理解。

  • numpy的底层使用C语言实现。所以效率挺高
  • numpy作为很多的用来做数据挖掘,数据分析,人工智能相关的技术组件的底层实现

NumPy 中定义的最重要的对象是称为 ndarray 的 N 维数组类型,它是描述相同类型的元素集合。ndarray 中的每个元素都是数据类型对象(dtype)的对象。ndarray 中的每个元素在内存中使用相同大小的块。

Numpy官网:https://numpy.org/
 

1、Numpy的数据结构

Numpy中定义的最重要的数据结构是称为ndarray的n维数组类型,这个结构引用了两个对象,一块用于保存数据的存储区域和一个用于描述元素类型的dtype对象。

  • 第一部分:元数据部分,存储当前这个ndarray对象的一些描述数据
  • 第二部分:真实数据部分,存储这个ndarray对象中存储的真实的数据

    二维数组的生成在python中我们还可以用到list列表,如果用list来表示[1,2,3],由于list中的元素可以是任何对象,所以list中保存的是对象的指针,如果要保存[1,2,3]就需要三个指针和三个整数对象,是比较浪费内存资源和cpu计算时间的,而ndarray是一种保存单一数据类型的多维数组结构,在数据处理上比list列表要快上很多,在这里我们可以用%timeit命令来检测两者的数据处理速度。

1.1 元数据(metadata)

存储对目标数组的描述信息,如:dim count、dimensions、dtype、data(实际上就是一个指针,指向实际的数据)等。

1.2 实际数据

完整的数组数据

将实际数据与元数据分开存放,一方面提高了内存空间的使用效率,另一方面减少对实际数据的访问频率,提高性能。
 

2、ndarray数组对象的特点

  • Numpy数组是同质数组,即所有元素的数据类型必须相同
  • Numpy数组的下标从0开始,最后一个元素的下标为数组长度减1

3、Numpy的优点

  • Numerical Python,数值的Python,补充了Python语言所欠缺的数值计算能力。
  • Numpy是其它数据分析及机器学习库的底层库。
  • Numpy完全标准C语言实现,运行效率充分优化。
  • Numpy开源免费。

二、安装numpy

1、Anaconda

conda install numpy

2、没有anaconda,则使用以下命令在终端中直接输入

pip install numpy

 


三、开始使用

3.1 引入库

代码如下(示例):

#导入numpy并为其取别名为np
import numpy as np

3.2 查看numpy安装版本

代码如下(示例):

print(np.__version__)

3.3 牛刀小试

# 引入第三方库:numpy,起个别名:np
import numpy as np
print(np.__version__)
#调用numpy中的arange函数生成一个序列
data = np.arange(10) # 生成0-9的数据序列
print(data) #打印数据
print(type(data)) # 打印数据类型

3.4 numpy VS list

import numpy as np# 对于序列0-9在python中使用list对其每个元素都进行+1操作
list1 = list(range(10))
print(list1)# 把这个数据序列(0-9)的每个元素都 进行 + 1 的操作
result_list = []
for i in list1:result_list.append(i + 1)print(result_list)# numpy中的实现
data = np.arange(10)
print(data)
data += 1 # 输出结果: 每个元素都 + 1
print(data)

 


总结

1、numpy安装很简单,易操作

2、使用numpy进行数组计算,要比使用原生的python的操作要简单很多


http://chatgpt.dhexx.cn/article/BhHt97Xs.shtml

相关文章

【Numpy学习笔记1】numpy安装、维度、基本运算、改变数据形态

1.Numpy使用场景 需要批量处理数据的时候机器学习,人工智能这些需要进行海量数据运算处理的地方写游戏里面的物体运行逻辑时,经常涉及到矩阵、向量运算机器人模拟环境,背后的环境反馈信息,全是靠批量数据算出来的任何需要做统计的…

pythonnumpy官网_Numpy安装

问题引入:电脑里安装了从官网下载的python3.8.0,。先使用了菜鸟教程的方法2安装。https://www.runoob.com/numpy/numpy-install.html 发现产生错误。先是提示我的pip工具没有更新到最新版本,于是根据提示更新后,发现仍有错误,于是…

numpy的安装

安装 1.以管理员身份打开cmd 2.输入命令安装numpy插件 pip insatll numpy 3.使用以下命令查看是否安装成功 pip list 出现numpy就安装成功

如何在matlab坐标轴上输入希腊字符和开根号符号

1.以输入\mu为例,要将解释器选择为 tex,不过matlab默认的就是tex. xlabel(\mum,FontName,Arial,fontsize,24,Interpreter,tex); 效果如下图所示: 2.输入开根号,需要把解释器改为latex. clear,clc ylabel($Z_{0} \sqrt {\epsilo…

matlab之方程式求根

一.利用syms和solve() 利用syms和sym定义一个标志变量 syms x sym(‘x’) 2.求方程根: 求x-2y5与xy6的联立方程组的根: 3.对函数求微分 4.对函数求积分 5. fsolve()

利用MATLAB对于符号方程进行求解

在数学计算中,我们经常需要对于方程或者是方程组进行求解,对方程的求解是数学中的一个重要的知识点。在MATLAB中提供了solve函数用于对于符号表达式的求解。solve函数有多种调用方式,包括如下所示: solve(equ):对于等…

利用matlab进行多项式求根——符号解

问题描述:对于一个方程,比如: a x 2 b x c 0 ax^2bxc0 ax2bxc0,我们想要求出关于x的表达式(求根)。 如果a,b,c是已知的,或者说是某个确定的数值,那么我们…

MATLAB(十)方程式求根

文章目录 前言符号寻根法符号根查找:solve ()解决多个方程用符号表示的方程Exercise练习符号区分:diff ()Exercise练习象征性的集成:int()Exercise练习回顾函数句柄()fsolve()Exercise练习fzero()求多项式的根:roots()二分法(或分…

matlab根号二,matlab根号二怎么打_常见问题解析,matlab,根号二,根号

matlab级数求和的方法_常见问题解析 matlab级数求和使用symsum函数,有4种方式,分别为symsum(expr)、symsum(expr,v)、symsum(expr,a,b)和symsum(f,v,a,b)。 matlab根号二怎么打 matlab中根号使用^来表示,根号二的表示方法为:2^0.5…

matlab 坐标轴根号,Matlab中根号表示怎么操作?根号表示教程分享

最近很多网友表示自己不清楚Matlab中根号表示的操作,而本篇文章就来给大家讲解Matlab中根号表示的教程介绍,大家都来一起学习吧。 Matlab中根号表示的教程介绍 常数根号的表示方法 1、打开matlab,在命令行窗口中输入“9^0.5”,按回…

matlab中根号的表示方法,Matlab中根号表示方法分享

现在许多朋友都已经安装使用Matlab这款软件,但不少伙伴使用过程里还不会根号表示方法,那么究竟是如何操作的呢?今日就来下文看看Matlab中根号表示教程吧。 常数根号的表示方法 1、打开matlab,在命令行窗口中输入9^0.5,…

记Git报错-refusing to merge unrelated histories

环境 系统:win10 git version 2.9.0.windows.1 创建一个新的分支,很久没用了。要重新启用,拉取最新分支的代码,结果报错:refusing to merge unrelated histories fatal: refusing to merge unrelated histories 解…

git: refusing to delete the current branch

最近,不知怎么操作,导致远程test分支无法删除。 原因是,远程仓库里的当前分支是test。进入远程仓库目录,git branch。由于已经解决,所以没有图。在网上找相关资料,都是github里面的操作。但是这个是自己搭建…

fatal: refusing to merge unrelated histories解决

背景:由于公司进行了仓库迁移,同事直接把代码init推进了新的仓库地址,我想在本地代码上切换远程仓库地址进行拉取远端代码时出现报错“fatal: refusing to merge unrelated histories”,大概意思是:“拒绝合并不相关的…

解决Git报错: fatal: refusing to merge unrelated histories

如果合并了两个不同的开始提交的仓库,在新的 git 会发现这两个仓库可能不是同一个,为了防止开发者上传错误,于是就给下面的提示 git无法pull仓库refusing to merge unrelated histories (拒绝合并不相关仓库) 遇到上问…

解决Git refusing to merge unrelated histories

背景:在本地初始化了一个Git代码仓库,关联到Github上新建的仓库,第一次执行git pull origin master 拉取远程分支时,出现标题上的问题(Git 2.9之后的版本才会出现此问题)。 refusing to merge unrelated hi…

git pull 无法下载合并 报错:refusing to merge unrelated histories

场景 我本地的代码和线上的代码,需要合并一下,因为线上的代码有修改的地方,我本地的代码也有修改的地方,直接覆盖会有问题,于是想到了用git(平时不用,直接ftp拉上去直接覆盖的),把修改过的文件…

git提交 出现 : fatal: refusing to merge unrelated histories

项目场景: 场景:本地文件在变更之后 无法提交到远程仓库并报错 fatal: refusing to merge unrelated histories 我最近因为同一个本地文件做了不同的修改,要提交到不同的仓库会经常提示此问题 原因分析: 问题的分析:…

git pull 提示错误 fatal: refusing to merge unrelated histories

从远程拉项目到本地的时候提示错误 造成 fatal: refusing to merge unrelated histories错误的原因有以下几点: 有一个包含一些提交的新 Git 存储库。然后,您尝试从现有的远程仓库中提取。合并变得不兼容,因为分支和远程拉取的历史不同。当…