系统学习Numpy(一)——numpy的安装与基础入门[向量、矩阵]

news2024/10/7 16:24:36

系列文章目录

numpy的安装与基础入门[向量、矩阵与维度]


numpy的安装与基础入门[向量、矩阵与维度]

  • 系列文章目录
  • 前言
  • numpy安装
  • 向量与矩阵
    • 生成向量
    • 生成矩阵
    • 向量类型


前言

numpy是科学计算以及机器学习深度学习的基础必备工具,本文将介绍numpy的安装,以及关于向量、矩阵相关的基础知识。


numpy安装

在conda下使用conda install numpy安装。
如果没有conda可以使用pip install numpy安装。

向量与矩阵

我们将使用import numpy as np对numpy进行引入。

生成向量

通过迭代生成向量

numpy中可以使用np.arange生成连续整数的向量

a = np.arange(6)
a

运行结果:array([0, 1, 2, 3, 4, 5])
这种是只限定了最大边界不超过6

如果我们想要设置一个最小值获取有下边界的向量

a = np.arange(1, 6)
a

运行结果:array([1, 2, 3, 4, 5])

同时我们还可以设置arange的第3个参数,来限定每隔几个数选取
加上我们每隔两个取一个数

a = np.arange(1, 6, 2)
a

运行结果:array([1, 3, 5])

前面都是生成值为整数的向量,我们可以使用np.linspace来生成不仅限于整数值的向量
np.linspace第一个参数是最小值,即下线,第二个参数是最大值,即上线,第三个参数是生成数据个数,下面的例子是均匀生成5个从0到10

a = np.linspace(0, 10, num=5)
a

运行结果:array([ 0. , 2.5, 5. , 7.5, 10. ])

通过列表生成向量
在numpy中,我们可以使用np.array把一些格式的数据转换成array类型的数据,所以我们可以通过列表生成向量。

我们可以使用

lst = [1, 2, 3, 4, 5, 6]
a = np.array(lst)
a

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

通过列表生成向量。

生成特殊向量
我们可以通过np.ones,np.zeros,np.empty生成值为1,值为0以及随机值的向量

np.zeros(3)

运行结果:array([0., 0., 0.])

np.ones(3)

运行结果:array([1., 1., 1.])

np.empty(3) # 按官方文档来看是随机的,但是不知道为什么我这里一直是全1的值 

运行结果:array([1., 1., 1.])

生成矩阵

从列表中生成矩阵
也可以使用多维列表生成多维向量,即矩阵

a = np.array([[1, 2, 3, 4], 
              [5, 6, 7, 8], 
              [9, 10, 11, 12]])
a

运行结果:
在这里插入图片描述
生成特殊矩阵
我们可以通过np.ones,np.zeros,np.empty生成值为1,值为0以及随机值的矩阵

np.zeros((3, 3))

运行结果:
在这里插入图片描述

np.ones((3, 3))

运行结果:
在这里插入图片描述

np.empty((3, 3))

在这里插入图片描述

向量类型

我们可以使用np.int8, np.int16,np.int32,np.int64,np.float16,np.float32,np.float64,np.double来实现对向量类型进行设置。下面我们以np.int8为例设置向量类型并展示效果

np.ones((3, 3), dtype=np.int8)

运行结果:
在这里插入图片描述

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

运行结果:array([1, 2, 3, 4], dtype=int8)

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

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

相关文章

C语言课设项目-51单片机-中断系统

(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 目录 51单片机的中断系统 一、中断的概念 二、51单片机的中断系统结构 三、中断允许控制 四、中断…

C#,初学琼林(06)——组合数的算法、数据溢出问题的解决方法及相关C#源代码

1 排列permutation 排列,一般地,从n个不同元素中取出m(m≤n)个元素,按照一定的顺序排成一列,叫做从n个元素中取出m个元素的一个排列(permutation)。特别地,当mn时,这个排列被称作全…

vs code c语言断点调试window版解决方案

序: 1、这一步不懂劝退多少人,博主搜到了多少博文都是mac的,结果发现都对不上! 先看最终效果演示 接下去我每个步骤,你都仔细看,漏看一个环境都对不上! 正文 1、先去看博主的c/c运行环境配置图…

10-vue3动画

文章目录1.vue的transition动画1.1transition的基本使用1.2transition组件的原理1.3过渡动画的class1.4class的命名规则和添加时机1.5显示的指定过渡时间1.6过渡的模式mode1.7动态组件的切换1.8.appear初次渲染2、animation动画2.1同时设置animation和transition3.结合第三方库…

【Bard】来自谷歌的“吟游诗人”

个人主页:【😊个人主页】 文章目录前言Bard与相关产品的对比Bard VS 弱智吧来自对手的评论ChatGPT文心一言总结:前言 相比较ChatGPT的话题不断,谷歌的“Bard”显然低调了许多,在“画大饼”失败一个多月后&#xff0c…

【Python开发手册】深入剖析Google Python开发规范:规范Python注释写作

💖 作者简介:大家好,我是Zeeland,全栈领域优质创作者。📝 CSDN主页:Zeeland🔥📣 我的博客:Zeeland📚 Github主页: Undertone0809 (Zeeland) (github.com)&…

高通开发系列 - linux kernel内核升级msm-4.9升级至msm-4.19(2)

By: fulinux E-mail: fulinux@sina.com Blog: https://blog.csdn.net/fulinus 喜欢的盆友欢迎点赞和订阅! 你的喜欢就是我写作的动力! 目录 MDSS PLL驱动问题msm-4.19内核适配nand flashMDSS PLL驱动问题 | /home/peeta/sc262R_private_rl/build-msm8909/tmp/work-shared/ms…

第01章_Java语言概述

第01章_Java语言概述 讲师:尚硅谷-宋红康(江湖人称:康师傅) 官网:http://www.atguigu.com 1. Java知识脉络图 1.1 Java基础全程脉络图 1.2 本章专题与脉络 2. 抽丝剥茧话Java 2.1 当前大学生就业形势 麦可思研究院…

C++之红黑树

文章目录前言一、概念二、性质三、结点的定义四、红黑树的结构五、插入操作1.插入代码2.左单旋3.右单旋4.插入新结点的情况分析与总结第一步、按照搜索二叉树的规则插入新结点第二步、分析插入结点后红黑树的性质是否被破坏动态演示:六、验证红黑树1.检测是否满足二…

口令暴力破解--Telnet协议暴力破解、数据库暴力破解与远程桌面暴力破解

Telnet协议暴力破解 Telnet Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。要开始一个telnet会话,必须输入用户名和密码来登录服务器。而一般服务器不会对用户名…

【数据结构】6.4 AVL树(C++)

【数据结构】——6.4 AVL树 没有学过二叉搜索树(也叫二叉排序树或二叉查找树)的小伙伴们建议先学习一下,这样阅读会更轻松哦 点我学习二叉搜索树 目录一、AVL树的概念1. 二叉搜索树的问题2. AVL树的性质二、AVL树实现平衡的方法1. 更新平衡因…

【音视频第11天】GCC论文阅读(2)

A Google Congestion Control Algorithm for Real-Time Communication draft-alvestrand-rmcat-congestion-03论文理解 看中文的GCC算法一脸懵。看一看英文版的,找一找感觉。 目录Abstract1. Introduction1.1 Mathematical notation conventions2. System model3.Fe…

Shader 海面/水面

首先用Terrain在场景中随便做个地形,当作海底 上面加个Plane作为海面 实现海水效果要考虑海水深度对颜色的影响,法线移动形成波浪,菲涅尔,高光等效果 深度 海水深的地方颜色深,浅的地方颜色浅,所以海边和…

fastDFS文件管理系统在linux下部署

1.概述 fastDFS分布式文件系统包括三个中要部分:追踪器、存储节点、客户端,可以使用文件存储,文件同步,文件访问等功能,用来存储大容量数据 存储节点集群: 横向扩容:增加存储容量 纵向扩容&…

liunx系统(VMware Workstation Pro)详细安装配置docker

​ 安装东西前要知道docker是什么,以及docker能都干什么,文章都是本人亲测然后写的过程. http://t.csdn.cn/iqbGg 博客文章链接详细介绍docker,以及部署MySQL,nginx等配置 一. liunx系统(VMware) 安装Docker 1. Docker中文网地址: Docker中文网 官网 (p2hp.com) 2. 打开VM…

50 Projects 50 Days - Progress Steps 学习记录

50 Projects 50 Days不使用任何前端框架,适合初学者练手,巩固前端基础,在这里记录一下学习过程,尤其是一些细节上的问题。 项目地址 Progress Steps 展示效果 Progress Steps 实现思路 进度条和结点分开处理: 1…

深入理解计算机系统第九章知识点总结

第九章 一些术语 PA(physical address):物理地址VA(virtual address):虚拟地址MMU(memory management unit):内存管理单元VP(virtual page):虚拟页PP(physical page):物理页/页帧SRAM:表示位于CPU和主存之…

详解Spring事务

目录 1.声明式事务 1.1.概述 1.2.使用 1.2.1.建表 1.2.2.maven依赖 1.2.3.配置 1.2.4.业务 1.2.5.测试 2.事务的传播行为 1.声明式事务 1.1.概述 spring中事务分为两种: 1.编程式事务,通过写代码来实现,每一步。 2.声明式事务&am…

华为手表开发:WATCH 3 Pro(15)传感器订阅加速度计

华为手表开发:WATCH 3 Pro(15)传感器订阅加速度计初环境与设备加速度传感器介绍与说明鸿蒙开发文件夹:文件重点新增展示的文本标记index.hmlindex.cssindex.js初 希望能写一些简单的教程和案例分享给需要的人 鸿蒙可穿戴开发 环…

Elasticsearch:索引状态是红色还是黄色?为什么?

在我之前文章 “Elasticsearch:如何调试集群状态 - 定位错误信息” 中,我有详细介绍如何调试集群状态。在今天的文章中,我将详细介绍如何故障排除和修复索引状态。 Elasticsearch 是一个伟大而强大的系统,特别是创建一个可扩展性极…