Numpy常用的30个经典操作以及代码演示

目录

以下是具体的操作步骤和示例代码:

数组创建

数组操作

数组计算

统计分析

矩阵操作



  • 这些操作涵盖了数组创建、数组操作、数组计算、统计分析和矩阵操作等多个方面.

以下是具体的操作步骤和示例代码:

首先导入Numpy

import numpy as np

数组创建

1. 创建一维数组

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

2. 创建二维数组

arr2 = np.array([[1, 2, 3], [4, 5, 6]])
print(arr2)

3. 创建全零数组

zeros = np.zeros((3, 3))
print(zeros)

4. 创建全一数组

ones = np.ones((3, 3))
print(ones)

5. 创建单位矩阵

eye = np.eye(3)
print(eye)

6. 创建随机数组

rand_arr = np.random.random((3, 3))
print(rand_arr)

7. 创建等间隔数组

linspace = np.linspace(0, 10, 5)
print(linspace)

数组操作

8. 数组形状变换

arr = np.arange(12)
reshaped = arr.reshape((3, 4))
print(reshaped)

9. 数组拼接

arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6]])
concatenated = np.concatenate((arr1, arr2), axis=0)
print(concatenated)

10. 数组分割

arr = np.arange(10)
split = np.split(arr, 5)
print(split)

11. 数组转置

arr = np.array([[1, 2], [3, 4]])
transposed = arr.T
print(transposed)

12. 数组扁平化

arr = np.array([[1, 2], [3, 4]])
flattened = arr.flatten()
print(flattened)

13. 数组扩展维度

arr = np.array([1, 2, 3])
expanded = np.expand_dims(arr, axis=1)
print(expanded)

14. 数组缩减维度

arr = np.array([[[1, 2, 3], [4, 5, 6]]])
squeezed = np.squeeze(arr)
print(squeezed)

数组计算

15. 数组加法

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
sum_arr = arr1 + arr2
print(sum_arr)

16. 数组减法

diff_arr = arr1 - arr2
print(diff_arr)

17. 数组乘法

prod_arr = arr1 * arr2
print(prod_arr)

18. 数组除法

quot_arr = arr1 / arr2
print(quot_arr)

19. 数组点积

dot_product = np.dot(arr1, arr2)
print(dot_product)

20. 数组广播

arr = np.array([1, 2, 3])
broadcasted = arr + 1
print(broadcasted)

统计分析

21. 计算数组均值

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

22. 计算数组标准差

std_dev = np.std(arr)
print(std_dev)

23. 计算数组中位数

median = np.median(arr)
print(median)

24. 计算数组总和

total = np.sum(arr)
print(total)

25. 计算数组最小值和最大值

min_val = np.min(arr)
max_val = np.max(arr)
print(min_val, max_val)

矩阵操作

26. 矩阵乘法

mat1 = np.array([[1, 2], [3, 4]])
mat2 = np.array([[5, 6], [7, 8]])
mat_product = np.matmul(mat1, mat2)
print(mat_product)

27. 矩阵求逆

inv_mat = np.linalg.inv(mat1)
print(inv_mat)

28. 矩阵行列式

det_mat = np.linalg.det(mat1)
print(det_mat)

29. 矩阵特征值和特征向量

eigvals, eigvecs = np.linalg.eig(mat1)
print("特征值:", eigvals)
print("特征向量:\n", eigvecs)

30. 矩阵的SVD分解

U, S, V = np.linalg.svd(mat1)
print("U矩阵:\n", U)
print("奇异值:", S)
print("V矩阵:\n", V)
  • 以上是30个常用的Numpy操作的示例代码.这些示例展示了如何使用Numpy进行数组创建、数组操作、数组计算、统计分析和矩阵操作等基本任务.如果你有任何问题或需要进一步的解释,请告诉我!

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/45042.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

sublime中无法找到Package Control或Install Package

在Crtl Shift P 中无法查找到Package Control或Install Package或调用产生报错。 可以尝试在 首选项 ---- > 设置中 检查配置文件"ignored_packages":紧跟的中括号中是否为空,如果不为空请删除其中内容。 如果不确定内容,可以用下面的…

【Linux】日志

日志是记录软件运行过程中发生的事件的一种手段,通常包含以下内容: 时间戳:记录日志条目创建的确切时间。这对于追踪事件发生的时间顺序至关重要。日志级别:表示日志信息的严重性或重要性,常见的级别包括 DEBUG、INFO…

【Linux】Linux背景历史

Linux背景历史 Linux背景Linux是什么?计算机的发展unix发展史Linux发展史开源Linux官网以及版本更替Linux企业应用现状 Linux环境的安装 Linux背景 Linux是什么? Linux(Linux Is Not UniX),一般指GNU/Linux,是一种免费使用和自由…

Qt QChart 曲线图表操作

学习目标:QChart 曲线图表操作 学习内容 QT中的QChart类提供了一个功能强大的图表绘制框架,可以根据需求方便高效地绘制各种类型的图表,主要特点如下: 支持多种常见图表类型,如线图、条形图、饼图、散点图等各种类型。开发者只需要选择合适的图表类和数据即可绘制…

一键调仓/组合买卖?篮子交易功能,PTrade如何进行篮子交易?

篮子交易,也叫组合交易,是指同时完成一个股票或期货组合的交易。 “篮子交易”功能,通过模板一键导入一篮子股票,可对篮子中的股票进行剔除 或使用持仓替代操作,同时可设定报价方式、单笔超价、交易方式等。并实时显示…

android13 rom 开发总纲说明

1. 这里是文章总纲,可以在这里快速找到需要的文章。 2. 文章一般是基于标准的android13,有一些文章可能会涉及到具体平台,例如全志,瑞芯微等一些平台。 3.系统应用 3.1系统应用Launcher3桌面相关: 3.2系统应用设置S…

深度学习--基础语法

目录 pytorch的tensor与numpy 关系 tensor与numpy的转换: 区别: 创建tensor 一 numpy数组,list列表转换为tensor 二 未初始化创建tensor 创建空的 PyTorch 张量 e: 使用 torch.Tensor() 创建指定大小的张量 f:…

HNU-2024操作系统实验-Lab9-Shell

一、 实验目的 理解Shell程序的原理、底层逻辑和Shell依赖的数据结构等 在操作系统内核MiniEuler上实现一个可用的Shell程序 能够根据相关原理编写一条可用的Shell指令 二、 实验过程 首先从底层出发,实现Shell程序 1.在src/include目录下新建prt_shell.h头文…

产线工控安全怎么做

随着工业自动化的推进,工控系统在现代生产线中的应用越来越广泛,但随着网络安全威胁的不断演变,产线工控系统的安全也面临着前所未有的挑战。面对这种情况,可以使用MCK主机加固(深信达)解决方案为产线工控安…

ROS基础学习-ROS运行管理

ROS运行管理 目录 1. ROS运行管理简述2. ROS元功能包2.1 概念2.2 作用2.3 实现 3. ROS-launch文件3.1. ROS节点管理launch文件3.1.1 概念3.1.2 作用3.1.3 使用 3.2 launch文件标签 1. ROS运行管理简述 ROS是多进程(节点)的分布式框架,一个完整的ROS系统实现&#x…

C++ 入门08:运算符重载

往期回顾: C 入门05:类和对象-CSDN博客 C 入门06:类的进阶(构造函数的重载与拷贝构造函数)-CSDN博客 C 入门07:静态成员和常量成员-CSDN博客 一、前言 在前面的文章学习中,我们学习了类和对象的…

在Spring Boot项目中集成分布式追踪系统

在Spring Boot项目中集成分布式追踪系统 大家好,我是微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 在复杂的分布式系统中,定位和解决问题是一项挑战。分布式追踪系统通过跟踪请求的调用链&#xf…

基于搭载 DJYOS 的 STM32H730 的低空无人驾驶无人机解决方案探究

摘要:本文详细阐述了一种基于搭载 DJYOS 的 STM32H730 开发的低空无人驾驶无人机解决方案。通过对其硬件配置、飞控系统、传感器应用、动力与续航以及操控方式等方面的深入分析,展现了该方案在低空无人驾驶领域的创新性和优势,为相关技术的发…

最新 Kubernetes 集群部署 + Contranerd容器运行时 + flannel 网络插件(保姆级教程,最新 K8S 1.28.2 版本)

资源列表 操作系统配置主机名IP所需插件CentOS 7.92C4Gk8s-master192.168.60.143flannel-cni-plugin、flannel、coredns、etcd、kube-apiserver、kube-controller-manager、kube-proxy、 kube-scheduler 、containerd、pause 、crictlCentOS 7.92C4Gk8s-node01192.168.60.144f…

VScode代码对齐快捷键

解决复制过来代码对齐格式问题。 左对齐:Ctrl[ 右对齐:Ctrl]

always块敏感列表的相关报错,

在综合的时候,报错如下 Synthesis synth_1 [Synth 8-91] ambiguous clock in event control ["E:/FPGA/FPGA_project/handwrite_fft/handwrite_fft.srcs/sources_1/new/reg_s2p.v":140] 猜测报错原因(暂时没有时间寻找原因,后续在…

web自动化环境搭建[基于Chrome]+常用元素定位方式

下载chrome:可以使用电脑自带软件[HUES,360等]下载 下载chromedriver: 老版本地址:http://chromedriver.storage.googleapis.com/index.html,选择点击进去,有个notes.txt文件查看支持版本 最新版本:https://googlechromelabs.github.io/chro…

mac python

1. 默认在 /usr/bin/ 目录,安装目录在 /Users/wangjun/Library/Python/3.9/lib/python/site-packages 2. 安装自己的python。 无需理会上面的版本。 访问 Python Release Python 3.12.4 | Python.org 安装即可 使用 python3 pip3 /usr/local/bin

AI虚拟医生重塑医患关系

如今,越来越多的企业开始选择用AI虚拟数字人播报员替代真人出镜,这不仅有助于企业实现降本增效的目标,更能让广告传播趋向多样化和个性化。对于普通人而言,也摆脱了真人出镜的种种烦恼,让表达更加自由与便捷。AI虚拟数…

一个简单的基于Qt的MVC框架

如下是一个简单的基于Qt的MVC框架示例,其中模型(Model)中的操作会在子线程中处理。这个示例将包括一个基本的视图(View)、控制器(Controller)和模型(Model)。 1. 项目结…