python进阶--Numyp库(一)

article/2025/9/10 13:08:11

一、Numpy库介绍

NumPy(Numerical Python)是Python的⼀种开源的数值计算扩展。提供多维数组对象,各种派⽣对象(如掩码数组和矩阵),这种⼯具可⽤来存储和处理⼤型矩阵,⽐Python⾃身的嵌套列表(nested list structure)结构要⾼效的多(该结构也可以⽤来表示矩阵(matrix)),⽀持⼤量的维度数组与矩阵运算,此外也针对数组运算提供⼤量的数学函数库,包括数学、逻辑、形状操作、排序、选择、输⼊输 出、离散傅⽴叶变换、基本线性代数,基本统计运算和随机模拟等等。

二、Numpy基础操作

1、安装Python库
pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple
2、查看numpy库是否可以

import numpy

在这里插入图片描述

没报错说明numpy库安装成功

3、Numpy常用函数

Numpy库中的函数非常的多,我们可以直接利⽤np中的⼀些内置函数来操作数据,比如我们创建全0的数组,也可以创建全1数组,全是其他数字的数组,或者等差数列数组,正态分布数组,随机数。

1)、 np.ones()函数
np.ones(shape, dtype=None, order='C')

shape:一个整数类型或者一个整数元组,用于定义数组的大小。如果仅指定一个整数类型变量,则返回一维数组。如果指定的是整数元组,则返回给定形状的数组。
dtype:可选参数,默认值为float。用于指定数组的数据类型。
order:指定内存重以行优先(‘C’)还是列优先(‘F’)顺序存储多维数组。

import numpy as np
arr1 = np.ones(3) # 输出为:array([1., 1., 1.])
arr1

在这里插入图片描述

import numpy as np
arr1 = np.ones((2,3)) #
arr1

在这里插入图片描述

import numpy as np
arr1 = np.ones((2,3),dtype=int) #
arr1

在这里插入图片描述

2)、 np.zeros()函数
import numpy as np
arr2 = np.zeros((2,3))  #同np.ones()函数使用一致
arr2

在这里插入图片描述

3)、 np.full()函数
## 返回一个指定形状、类型和数值的数组 
np.full(shape, fill_value, dtype=None, order=‘C’) 

shape:整数或整数序列
fill_value: 标量或类似数组
dtype:数据类型,可选, 数组所需的数据类型 默认值 None 表示
order: {‘C’, ‘F’},可选
like:array_like

import numpy as np
arr3 = np.full(shape = [2,3],fill_value=2.718)
arr3

在这里插入图片描述

4)、 np.arange()函数
##  生成一个从0到num-1步数为1的一维ndarray (类似等差数列)
np.arange(start,stop,step, dtype=None)

start: 开始位置,数字,可选项,默认起始值为0
stop: 停止位置,数字
step:步长,数字,可选项, 默认步长为1,如果指定了step,则还必须给出start。
dtype:输出数组的类型。 如果未给出dtype,则从其他输入参数推断数据类型。

import numpy as np
arr4 = np.arange(start = 0,stop = 10,step = 2)
arr4

在这里插入图片描述

5)、 np.linspace()函数
##  在指定的范围(start到stop)内返回1个数组(这里的数组指ndarray数组),这个数组包含了num个均匀间隔的样本 
np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=float, axis=0)

start:序列的起始点
stop:序列的终点
num(可选):生成的样本数量,默认是50
endpoint(可选):当endpoint=True时包括结束值,当endpoint=False时不包括结束值
retstep(可选):当retstep=True时返回步长,当retstep=False是不返回步长
dtype(可选):输出数组的类型。如果未给定dtype,则从其他输入参数中推断数据类型

import numpy as np
## 输出 等差数列 0-9
arr5 = np.linspace(start =0,stop = 9,num = 10,dtype=int)
arr5   

在这里插入图片描述

6)、 np.random.randint()函数
##  返回low(包括)到high(不包括)之间的随机整数 即[low, high)
np.random.randint(low, high=None, size=None, dtype=‘l’)

low: int 生成的数值的最小值(包含),默认为0,可省略。

high: int 生成的数值的最打值(不包含)。
size: int or tuple of ints 随机数的尺寸, 默认是返回单个,输入 10 返回 10个,输入 (3,4) 返回的是一个 3*4 的二维数组。(可选)。
dtype:想要输出的结果类型。默认值为int。(可选,一般用不上)

## 随机返回 0-9 的一个整数
np.random.randint(10) ## 8
## 随机返回 10-20 的一个整数
np.random.randint(10,20) ## 17
## 随机返回 10-20 的 长度为 10 的数组
np.random.randint(10,20,size=10)

在这里插入图片描述

## 返回 0-10 的 3*4 的 随机数组
np.random.randint(10,size=(3,4))

在这里插入图片描述

7)、 np.random.rand()函数
## 给定维度生成[0,1)之间的数据,包含0,不包含1
np.random.rand(d0, d1, ..., dn)

dn: 表示每个维度

## 生成 5*2 的[0-1)的数据
np.random.rand(5,2)

在这里插入图片描述


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

相关文章

解决端口8080被占用的问题!

今天在回顾cms项目的时候发现怎么都启动不了,看见左下角报错 原来是8080端口被别的进程占用了。 解决方法:winr cmd 回车 在命令窗口中 输入netstat -ano就可以查看所有端口显示的状态信息 找到这个本地地址是0.0.0.0:8080最后面的PID,就是…

8080端口被占用怎么办

做项目时肯定会遇到8080端口被占用的情况,其实解决办法很简单: CtrlR键,输入cmd: 复制这串代码到cmd界面: netstat -aon|findstr "8080" 可以看到8080确实被占用了: 把后面的都终止掉&#xff…

解决localhost:8080被占用

解决方法如下: 1.以管理员方式打开CMD,我的电脑——c盘——windows——system32——CMD.exe——右键管理员身份打开 1.在cmd里输入netstat -ano|findstr 8080,查看是哪个进程占用了8080端口。 2.输入taskkill /pid 11904 /f,结束…

解决SpringBoot默认Tomcat端口号8080被占用

问题描述: 打开Eclipse后启动SpringBoot项目,发现8080端口被占用。然后寻找Eclipse是否有未关闭的Tomcat项目,发现并没有,重启Eclipse仍然会出现端口占用的请况。 给出的错误信息显示。 Description: The Tomcat connector co…

解决tomcat端口8080被占用

1、eclipse启动tomcat时8080端口被占用: 2、打开CMD: 命令查找正在使用8080端口的进程, netstat -ano|findstr 8080 杀死该进程, taskkill /pid 117800 /f 命令说明:taskkill /pid 117800(进程id号&am…

idea报8080端口被占用解决

1错误提示 Identify and stop the process that’s listening on port 8080 or configure this application to listen on another port. 2原因 这是因为我们某个程序占用了8080端口,有可能是我们以前某个项目没有正确暂停导致。 3解决 1:打开cmd窗…

Tomcat 8080 端口被占用解决方案

1. 报错记录 原因:端口号8080被其他应用程序占用 2. 解决方案 方案一:结束占用端口程序 在Windows控制台中输入下面内容查询占用8080端口的进程id netstat -ano|findstr "8080" ctrlshiftesc打开任务管理器,在服务通过pid找到占用程…

解决8080端口号被占用问题

在使用TomCat时偶尔会出现8080端口被占用的提示,为此总结出如下解决方法: 1.以管理员身份打开命令提示符 2.输入netstat -ano|findstr "8080" 3. 上图最右边的6636、3280、6636为进程id,接下来就要结束这些进程 4.输入taskkill /f /pid 663…

解决windows系统下8080端口被占用

1.winR:输入cmd,回车 输入指令:netstat -ano | findstr 8080 指令的意思是找出占用8080端口的进程pid 2. 此时找到8080端口号的pid是11660(pid是会变化的) 终止进程 释放端口 输入指令:taskkill …

解决SpringBoot8080端口被占用问题

问题描述: 大致意思是我们使用的8080端口已经被占用了。 解决方法: 方法一:修改我们要使用的端口 在resource目录下面找到application.properties然后输入 server.port 8081(注意:这里不一定非要是8081,…

解决tomcat 8080端口被占用问题

首先,我们要看一下究竟是什么占用了8080端口: winr 打开运行窗口输入 cmd 输入 netstat -ano 查看开放的所有端口 端口太多,我们可以使用 netstat -ano|findstr "端口号" 查看占用8080端口的进程 netstat -ano|findstr "8080…

Ubuntu的8080端口被占用

因为最近学习web建站技术,弄了好多环境,今天开机启动服务的时候报了如下错误: 意思就是我的8080端口已经被别的进程占用了,导致服务启动异常。解决办法so easy, 找到占用8080端口的进程,直接kill掉就好啦。百度一下&a…

8080端口被占用

当我们执行spring项目或者关闭spring项目新建另外一个spring项目时,idea后台显示 ‘8080’ 端口已被占用。 解决方法: 1.快捷键:winR 打开 2.输入cmd 3.在dos命令中输入 netstat -aon|findstr “8080” :查找pid 4.在任务管理器…

新建服务器显示8080被占用,快速解决eclipse/myeclipse下的tomcat服务器端口号8080被占用的简单方法...

使用过tomcat服务器的人都会不可避免的遇到tomcat端口号被占用的情况。tomcat端口号被占用造成的原因很多,但本文只是针对由于打开多个版本的eclipse/myeclipse或者是tomcat端口关闭不正常造成的tomcat端口号被占用的现象。 一般情况下会比较少遇到上述的两种情况&a…

2012年度最受欢迎中国开源软件评选

http://www.oschina.net/project/top_cn_2012 afinal Afinal 是一个android的 orm 和 ioc 框架。而且封装了android中的httpClient,使其更加简单易用。使用finalBitmap,无需考虑bitmap在and... 当前票数: 957 投票 Alice UI Alice 是支付宝前…

参与评选开源软件名单

afinal Afinal 是一个android的 orm 和 ioc 框架。而且封装了android中的httpClient,使其更加简单易用。使用finalBitmap,无需考虑bitmap在and... 当前票数: 957 投票 Alice UI Alice 是支付宝前端样式解决方案小组的项目代称,其包…

中文分词

 MFSOU中文分词PHP扩展 一个PHP函数实现中文分词。使分词更容易,使用如下图: SCWS调用示例 SCWS Hightman开发的一套基于词频词典的机械中文分词引擎,它能将一整段的汉字基本正确的切分成词。采用的是采集的词频词典&#xff0c…

中文分词 及发展现状(总结的不错)

中文分词 (Chinese Word Segmentation) 指的是将一个汉字序列切分成一个一个单独的词。分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。我们知道,在英文的行文中,单词之间是以空格作为自然分界符的,而中文只是字、句和段能通过…

中文分词整理

背景 存在中文 分词技术,是由于中文在基本文法上有其特殊性,具体表现在: 1.以英文为代表的拉丁语系语言相比,英文以空格作为天然的分隔符,而中文由于继承自古代汉语的传统,词语之间没有分隔。 …

搜索引擎之阿堂Solr学习笔记系列2(基础篇:中文分词)

本篇文章阿堂将要和大家分享中文分词技术,这也是搜索引擎技术中非常重要的一个内容。在讲这个内容之前,我们先得要了解一些中文分词方面的基本概念介绍。 中文分词 (Chinese Word Segmentation)指的是将一个汉字序列切分成一个一个单独的词。分词就是将连续的字…