首页 > 编程语言 >Python学习-[numpy库]-初级

Python学习-[numpy库]-初级

时间:2024-08-26 13:57:33浏览次数:11  
标签:输出 10 Python 初级 数组 np array numpy

创建数组

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

使用zeros创建全零数组

np.zeros((3, 2))

代表一个三行二列的数组:

array([0., 0.],
	  [0., 0.], 
	  [0., 0.])

获取数组的尺寸

a = np.zeros((3, 2))
a.shape
#输出结果为:(3, 2)

第一个数据展示数组第一维的长度,第二个数据展示数组第二维的长度,以此类推

扩展-创建一个全都是1的数组

np.ones((2, 4))

使用arange创建一个递增或者递减的数列

np.arange(3, 7)
#结果为array([3, 4, 5, 6])

注意这里的(3, 7)是一个左开右闭的区间

使用linspace均分一块长度的数据

np.linspace(0, 1, 5)
#划分结果为array([0. , 0.25, 0.5, 0.75, 1. ])

这里前两个数指的是范围,最后一个数指的是划分的样本数量。

创建一些完全随机的数

np.random.rand(2, 4)

生成两行四列完全随机的数字

指定numpy数组的数据类型

在numpy中,数组默认的类型是64位的浮点数,修改数据类型通过使用dtype来修改

a = np.zeros((4, 2), dtype=np.int32)

有np.int8/16/32/64,np.uint8/16/32/64,np.float32/64,bool,str等等

转换数据类型

a = np.zeros((2, 4))
b = a.astype(int)

加法和除法

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
a + b
#计算结果为np.array([5,7,9])
a/b
#计算·结果为np.array([0.25, 0.4, 0.5])

乘法

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
np.dot(a, b)
#np.dot会将俩个数据进行点乘运算,结果为32
a = np.array([1, 2], [3, 4])
b = np.array([2, 0], [0, 2])
a @ b
#矩阵乘法,和np.matmul()一样,输出array([2,4], [6, 8])

平方根

a = np.array([1, 2, 3])
np.sqrt(a)
#结果array([1, 1.41421356, 1.73205081])

三角函数

a = np.array([1, 2, 3])
np.sin(a)
np.cos(a)
#array([0.74147098, 0.90929743, 0.14112001])
#array([0.54030231, -0.41614684, -0.9899925])

对数和指数运算

a = np.array([1, 2, 3])
np.log(a)
np.power(a, 2)
#array[0.        , 0.69314718, 1.09861229]
#array([1, 4, 9], dtype=int32)

广播-举例乘法

a = np.array([1, 2, 3])
a * 5
#array([5, 10, 15])

广播-举例加法

a = np.array([[1], [10], [20]])
b = np.array([0, 4, 2])
a + b
#array([[1, 2, 3], [10, 11, 12], [20, 21, 22]])

不同尺寸的数组做运算时,numpy会将其扩展至相同的尺寸,这一性质叫做广播

在这里插入图片描述

最小最大值

a = np.array([1, 2, 3, 4, 5])
a.min()
a.max()
#输出1和5

最小最大值索引

a = np.array([1, 2, 3, 4, 5])
a.argmin()
a.argmax()
#输出0和4

求和

a = np.array([1, 2, 3, 4, 5])
a.sum()
#输出15

平均值

a = np.array([1, 2, 3, 4, 5])
a.mean()
#输出3.0

中位数

a = np.array([1, 2, 3, 4, 5])
np.median(a)
#输出3.0

方差和标准方差

a = np.array([1, 2, 3, 4, 5])
a.var()
a.std()
#输出2.0和1.4142135623730951

维度处理

对于上述数据,我们可以使用axis对维度进行处理

a = np.array([1, 2, 3, 4, 5], [5, 6, 7, 8, 9])
a.sum(axis=0)
#输出:array([6, 8, 10, 12, 14])这里axis=0指的是第一维度,也就是纵向相加
a.sum(axis=1)
#输出:array([15,35])这里axis=1指的是第二位维度,也就是横向相加

获取下标元素

a = np.array([1, 2, 3], [4, 5, 6])
a[0, 1]
#输出:2

寻找符合条件的值

a = np.arange(10)
#这里a是:array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
a[a < 3]
#这里是:array([0, 1, 2])
#这里可以使用多种不同的条件,包括a[(a > 3) & (a % 2 == 0)]

切片获取

a = np.array([1, 2, 3], [4, 5, 6])
a[0, 0:2]
#输出array[1, 2]

0:2代表[0,2)这个区间,左闭右开

a = np.array([1, 2, 3], [4, 5, 6])
a[0, :]
#这样可以输出第一行所有的元素,也可以直接去掉冒号
a[0]
a = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
a[0:9:2]
#输出为array([1, 3, 5, 7, 9])
a[0:9:3]
#输出为array([1, 4, 7])

这里第二个冒号后面的指切片距离,每隔几个数选一个数字,这个跨度可以选负数,选负数的话就可以从右往左取

a = np.array([1, 2, 3, 4, 5])
a[4:1:-2]
#输出是array([5, 3])

所以经常会看到这种写法:

a = np.array([1, 2, 3, 4, 5])
a[::-1]
#输出是array([5, 4, 3, 2, 1])

1.导入numpy库并简写为np

import numpy as np

2.打印numpy库的版本和配置说明

print(np.__version__)
np.show_config()

3.创建一个长度为10的空向量

np.zeros(10)

5, 3])


所以经常会看到这种写法:

```python
a = np.array([1, 2, 3, 4, 5])
a[::-1]
#输出是array([5, 4, 3, 2, 1])

在这里插入图片描述

标签:输出,10,Python,初级,数组,np,array,numpy
From: https://blog.csdn.net/MEIKONG1314/article/details/141562301

相关文章

  • Python分布式任务处理库之dramatiq使用详解
    概要在现代Web应用和数据处理任务中,异步任务处理是一个至关重要的部分。Dramatiq是一个用于分布式任务处理的Python库,旨在提供简单、可靠的任务队列解决方案。与其他任务队列库相比,Dramatiq更加轻量级,且易于上手。它的设计目标是帮助开发者轻松地将耗时的任务放到后台......
  • Python集成学习和随机森林算法使用详解
    概要集成学习是一种通过组合多个模型来提高预测性能的机器学习方法。它通过将多个弱学习器的结果结合起来,形成一个强学习器,从而提升模型的准确性和稳健性。随机森林(RandomForest)是集成学习中一种非常流行且有效的算法,特别适用于分类和回归任务。本文将详细介绍Python中如何......
  • PythonOS-原创高仿MS-DOS的Python程序
    这个Python程序需要依赖猿编程的内置模块,所以请先下载猿编程。00x1:代码部分PythonOS是免费且开源的。使用方法:在猿编程里点击代码实验室,点击加号添加作品,然后将代码复制到作品里(代码放在文末),然后在电脑桌面上建立一个文件夹,在文件夹里创建BootLoad.txt,内容为Load创建verin......
  • python调用ollama库详解
    0准备1)准备Ollama软件(注意:两个不是同一个东西)详见上次的文章 Ollama通过gguf文件加载AI模型(补充:关于Ollama加载AI模型的补充)2)准备ollama库如果您还未安装ollama库,请使用pip安装:pipinstallollama#1ollama库的基本使用importollama#普通输出(请先按照准备工作中......
  • Python系列(9)- Python 异常处理机制
    1.错误和异常   编程开发时一般会遇到2种类型的错误,分别为语法错误和运行时错误。   语法错误(SyntaxError):Python解释器在解析代码时遇到的错误,比如拼写错误、不符合语法规则等。Python解释器会提示错误的类型和出错的位置,便于开发者及时纠正错误,在错误没有得......
  • MacOS安装 Python 和 PyCharm
    MacOS安装Python3.12.5和PyCharm小阿呜有话说一、MacOS安装PythonPython官网下载二、MacOS安装PyCharmPyCharm官网下载叮嘟!这里是小啊呜的学习课程资料整理。好记性不如烂笔头,今天也是努力进步的一天。一起加油进阶吧!小阿呜有话说前不久换了新电脑,需要重新......
  • Python批量发送邮件如何实现邮件群发策略?
    Python批量发送邮件怎么定制化?如何使用Python发信?Python批量发送邮件已经成为一种不可或缺的工具。Python批量发送邮件都能大大提高效率,节省时间和资源。AokSend将详细介绍如何利用Python批量发送邮件实现高效的邮件群发策略。Python批量发送邮件:设置环境要开始Python批量......
  • Numpy库
    一、NumPy介绍在Python中,NumPy是一个开源的数值计算扩展库,用于高效地处理大型多维数组和矩阵,同时提供了大量的数学函数库进行这些数组的操作。NumPy库在科学计算,数据分析,机器学习中有广泛应用。二、安装NumPy1pipinstallnumpy2.1安装完NumPy后,你需要在Python脚本中导入......
  • Python画笔案例-012 绘制空心T字
    1、绘制空心T字通过python的turtle库绘制一个空心T字的图案,如下图:2、实现代码 绘制以上空心T字的图案,代码如下:"""空心T字.py"""importturtle#导入海龟模块turtle.pensize(2)#设定海龟画笔粗细为2turtle.setheading(90)......
  • Python画笔案例-013 绘制水墨风格画
    1、绘制水墨风格画通过python的turtle库绘制一个水墨风格画的图案,如下图:2、实现代码 绘制以上水墨风格画图案,代码如下:"""水墨风格画.py"""importturtle#导入海龟模块turtle.penup()#抬笔turtle.goto(-200,-200)#坐......