numpy数组,numpy索引,numpy中nan和常用方法

news2024/10/7 16:16:05

一:【numpy数组】

        1.1为什么要学习numpy

                1.快速   2.方便  3.科学计算的基础库

        1.2什么是numpy

                一个python中做科学计算的基础库,重在数值计算,也是大部分python科学计算库的基础库,多用于在大型,多维数组上执行数组运算

        1.3numpy的数组的创建(矩阵)

                

                 

 

       1.4数据类型的操作

                

                 

                 

 

        1.4数组的形状

                数组的形状

                        

                        reshape方法有return值,不会对数据本身进行任何修改,所以还是2行6列

                        

 

 

                                

                         

                         当shape的元组为一个值时,这个数组形状为一位的,为二个值时,数组形状为二位的

                        修改数组形状:reshape

                        

                         ‘三位数’数组见解:以下代码的(2,3,4)可以这样理解:2为一共二大块,三为每块三行,4为每块4列

                          

 

        1.5numpy中常见的更多数据类型

                

        1.6数组的计算

                数组和数的计算

                        

                 数组和数组的计算(数组都是同样的位数)

                        

                 数组与数组的计算(不同位数但行或者列维度相同)

                        行的维度相同所以进行,行计算

                         列的维度相同,进行列运算

        

                 数组与数组的计算(行和列都没有相同维度)

                        没有相同维度的数组进行计算会报错

                  广播原则:

                         

二:【numpy读取本地数据和索引】

        2.1轴

                在numpy中可以理解为方向,使用0,1,2...数字表示,对于一个一维数组,只有一个0,对于2维数组(shape(2,2)),0轴和1,对于三维数组(shape(2,2, 3)),0,1,2

                有了轴的概念之后,我们计算会更加方便,比如计算一个2维数组的平均值,必须指定是计算哪个方向上面的数字的平均值

                np.arange(0,10).reshape((2,5)),reshpe2表示0轴长度(包含数据的条数)2,1轴长度为5,2X5一共10个数据

                二维数组的轴

                        

                 三维数组的轴

                        

        2.1numpy读取本地数据

                CSV:Comma-Separated Value,逗号分隔值文件

                显示:表格状态

                源文件:换行和逗号分隔行列的格式化文本,每一行的数据表示一条记录

                由于csv便于展示,读取和写入,所以很多地方也是用csv的格式存储和传输中小型的数据,为了方便教学,我们会经常操作csv格式的文件,但是操作数据库中的数据也是很容易的实现的

                读取方法:

                        np.loadtxt(fname,dtype=np.float,delimiter=None,skiprows=0,usecols=None,unpack=False)

                        

                 numpy中的转置:(就是行和列的交换)

                        转置是一种变换,对于numpy中的数组来说,就是在对角线方向交换数据,目的也是为了更方便的去处理数据

                        

                        

                         

 

        2.2numpy中的索引和切片

                

                 取行:a[2]

                取连续的多行:a[2:]

                取不连续的多行a[[2,8,10]]

                取列a[:,0]  ,前操作行,逗号后操作列

                

        2.3numpy中更多的索引方式

                numpy中数值的修改

                        

                         

                         

                  numpy中布尔索引

                        

                 numpy中三元运算符

                        

               numpy中的clip(裁剪)(小于10的替换成10,大于18的替换成18)

                        

 

三:【numpy中的nan和常用方法】

        3.1数据的拼接

                

         3.2数组的行列交换:

                

        3.2numpy中的随机方法

               1.获取最大值最小值的位置

1.   np.argmax ( t,axis =0)
2.   np.argmin ( t,axis =1)
        2. 创建一个全 0 的数组 : np.zeros ((3,4))
        3. 创建一个全 1 的数组 : np.ones ((3,4))
        4. 创建一个对角线为 1 的正方形数组 ( 方阵 ) np.eye (3)
        

                 numpy生成随机数

                        

                 分布的补充

                        1.均匀分布:相同的大小范围内的出现概率是等可能的

                                

                        2.正太分布:呈钟型,两头低,中间高,左右对称

                                

        3.3numpy中的nan和常用统计方法

                nump中的nan和inf

                        nan(NAN,Nan):not a number表示不是一个数字

                        什么时候numpy中会出现nan:

                                当我们读取本地的文件为float的时候,如果有缺失,就会出现nan

                                当做了一个不合适的计算的时候(比如无穷大(inf)减去无穷大)

                       inf(-inf,inf):infinity,inf表示正无穷,-inf表示负无穷

                       什么时候回出现inf包括(-inf+inf

                              比如一个数字除以0,(python中直接会报错,numpy中是一个inf或者-inf

                numpy中的nan的注意点

                        1.二个nan是不相等的

                        2.np.nan!=np.nan

                        3.nan和任何计算都为nan

                numpy中常用统计函数

                        求和:t.sum(axis=None)

                        均值:t.mean(a,axis=None)  受离群点的影响较大

                        中值:np.median(t,axis=None)

                        最大值:t.max(axis=None)

                        最小值:t.min(axis=None)

                        极值:np.ptp(t,axis=None) 即最大值和最小值只差

                        标准差:t.std(axis=None)

                         标准差是一组数据平均值分散程度的一种度量。一个较大的标准差,代表大部分数值和其平均值之间差异较大;一个较小的标准差,代表这些数值较接近平均值反映出数据的波动稳定情况,越大表示波动越大,约不稳定

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

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

相关文章

常用的键盘事件

1、键盘事件 键盘事件触发条件onkeyup某个键盘按键被松开时触发onkeydown某个键盘按键被按下时触发onkeypress某个键盘按键被按下时触发(但它不识别功能键,比如ctrl、shift等) 注意: 如果使用addEventListener不需要加ononkeypr…

Go 堆数据结构使用

说到 container/heap 下的堆数据结构,让我们不需要从零开始实现这个数据结构。如果只是日常工作,其实还挺难用到堆的,更多的还是在写算法题的时候会用到。 基本概念 堆分为大顶堆和小顶堆,区分这两种类型方便我们处理问题。大顶…

Docker安装Zookeeper教程(超详细)

生命无罪,健康万岁,我是laity。 我曾七次鄙视自己的灵魂: 第一次,当它本可进取时,却故作谦卑; 第二次,当它在空虚时,用爱欲来填充; 第三次,在困难和容易之…

第六章:关系数据理论

一、问题的提出、范式 1、【多选题】下列说法中正确的是: 正确答案: ABCD 2、【多选题】关系模式R(项目序号,项目代码,项目名称),项目序号是码。一个项目代码只有一个项目名称。下列说法不正确…

文献检索报告

文献检索第一篇检索作业总结第一章检索任务1.1检索课题1.2确定选题所属学科1.3中英文检索词第二章检索策略与结果2.1检索中文期刊文献2.1.1 CNKI中国期刊全文数据库2.1.2 维普期刊全文数据库2.1.3 万方期刊数据库2.1.4 超星期刊全文2.2检索中文学位论文2.2.1 CNKI博硕学位论文数…

virtio-net发包流程分析

virtio-net发包流程分析 virtio-net发包流程前端驱动部分 总流程 start_xmit|---->free_old_xmit_skbs /* 释放backend处理过的desc */|---->xmit_skb /* 调用xmit_skb函数将网络包写入virtqueue */| |---->sg_set_buf /* 数据包头部填入scatterlist */| | |---->…

手撕红黑树、三种情况就可玩转红黑

🧸🧸🧸各位大佬大家好,我是猪皮兄弟🧸🧸🧸 文章目录一、红黑树概念二、红黑树性质三、红黑树 插入①变色(c红 p红 g黑 u存在且红)②旋转(c红 p红 g黑 u存在且…

熟人服务器被黑,五种实战方法强化linux服务器安全性!

公司护网行动,五种实战方法,下面直接上实操: 1.修改ssh端口为59527,并开放防火墙端口 修改ssh配置文件 /etc/ssh/sshd_config,将端口号修改为59527.同时保留ssh默认的22端口,为了防止修改端口号失败以后,远程登录不上服务器 2.修改firewall配置 默认情况下,防火墙是…

JVM——垃圾回收

垃圾回收 1、如何判断对象可以回收? 一、引用计数法 当一个对象被其他变量引用时,使其计数1(若被引用两次,计数为2),若某个变量不在引用它时,使其计数-1;当这个对象引用计数变为0时意味着不…

吴恩达【神经网络和深度学习】Week1——深度学习概述

文章目录1、What is a neural network?2、Supervised Learning with Neural Networks2.1、Examples2.2、The classification of data3、Why is Deep Learning taking off?4、Quiz课程笔记整理按照所讲章节的标题来完成1、What is a neural network? 以房价预测模型…

基于HTML5 技术的开放自动化HMI

人机交互接口(HMI)是自动化系统中不可或缺的一部分。传统的做法是提供一个HMI 显示屏,并且通过组态软件来配置显示屏的功能,通过modbus 或者以太网与PLC 连接。 现在,事情变得复杂了许多,用户不仅需要通过专…

干货 | 关于PCB中的“平衡铜”,一文全部说明白

平衡铜是PCB设计的一个重要环节,对PCB上闲置的空间用铜箔进行填充,一般将其设置为地平面。 平衡铜的意义在于: 对信号来说,提供更好的返回路径,提高抗干扰能力;对电源来说,降低阻抗,…

Android 13 源码获取与构建

文章目录1. 环境准备1.1 基本信息1.2 系统初始化1.2.1 更新 Ubuntu 软件包1.2.2 安装 git 工具1.2.3 安装依赖包(Ubuntu 18.04)1.2.4 修改默认python版本1.2.5 安装 repo 工具2. 源码下载完成2.1 创建源码目录2.2 初始化源码仓库2.3 开始下载源码2.4 Android 13 源码目录3. 构建…

m可见光通信的空间调制(sm)误码率matlab仿真

目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 可见光通信技术(Visible Light Communication,VLC)是指利用可见光波段的光作为信息载体,在空气中直接传输光信号的通信方式。可见光通信技术绿色低…

virtio vring原理

vring原理 在 virtio 设备上进行批量数据传输的机制被称为 virtqueue 。每个设备可以拥有零个或多个 virtqueue ,当 Driver 想要向设备发送数据时,它会填充 Descriptor Table 中的一项(或将几项链接在一起),并将描述符…

圣诞树拼图游戏unity制作

2022年圣诞节到来啦,很高兴这次我们又能一起度过~ 一、前言 提示:使用unity来制作一个拼图游戏,图片便是圣诞树。 二、创意名 圣诞树拼图游戏 三、效果展示 圣诞树拼图游戏最终效果。 游戏中效果如图: 游戏拼图完成后效果如图&am…

vue实现随机生成分享海报(内容动态)

大家好,我是雄雄。 前言 昨天写了篇文章:自己整理的vue实现生成分享海报(含二维码),看着网上的没实现 主要是介绍了如何使用vue实现,动态分享内容为海报,且附带二维码,扫描二维码能…

shell脚本四剑客之awk详解

文章目录awk的介绍awk能够干什么awk的格式工作原理:记录和域内建变量的用法1. FS2. OFS3.RS4. ORS5. NF6. NRBEGIN 和END语句块常见案例1. 使用NR行号提取ip2. 打印UID小于10的账号名称和UID信息3. 数学运算4. AWK打印硬盘设备名称,默认以空格为分割&…

UDP用户数据报协议(计算机网络-运输层)

目录 UDP 概述 UDP 的主要特点 UDP 的问题 UDP的多路分用模型 UDP 的首部格式 UDP 概述 用户数据报协议(User Datagram Protocol,UDP) UDP 只在 IP 的数据报服务之上增加了很少一点的功能,即端口的功能和差错检测的功能 虽…

计算机网络——网络层功能概述

网络层 网络层的主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务。网络层的传输单位成为数据报。 数据报是一组比较长的数据,分组则是将数据报划分为不同的片段 网络层的第一个功能:路由的选择和分组的转发。 网络层…