数据分析——numpy教程

1.NumPy:

是Python的一个开源的数值计算库。可以用来存储和处理大型矩阵,比python自身的嵌套列表结构要高效,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库,包括数学、逻辑、形状操作、排序、选择、输入输出、离散傅里叶变换、基本线性函数,基本统计运算和随机模拟等。

2.Jupyter NoteBook

Web应用程序,用途是数据清理和转换,数值模拟,统计建模,机器学习等

运行外部python文件:

%run *.py

计算statement运行时间:

%time statement                一般用于耗时比较长的代码

%timeit statement                  会多次运行statement,得到一个更精准的时间,一般用于耗时较短的

返回当前会话的所有变量和函数名称:

%who_ls

3.Numpy数组:

1.使用np.array()创建

numpy默认ndarray的所有元素类型都是相同的,如果传进来的列表包含不同的类型,则统一为同一类型,优先级str>float>int

ndarray的常见数据类型:int、float、str

2.使用np的routines函数创建

  1. 创建一个所有元素都为一的多维数组:np.ones(shape,dtype=None,order='C')

shape:形状

dtype=None:元素类型

order:{'C','F'},默认值为C,C(行主序),F(列主序)

  1. 创建一个所有元素都为0的多维数组:np.zeros(shape,dtype=None,order='C')

dtype默认值为float

  1. 创建一个所有元素都为指定元素的多维数组:np.full(shape,fill_value,dtype=None,order='C')

shape:形状

fill_value:填充值

dtype=None:元素类型

order:{'C','F'},默认值为C,C(行主序),F(列主序)

  1. 创建一个对角线为1其他位置为0的二维数组:np.eye(N,M=None,k=0,dtype=None)

N:行数

M:列数,默认为None,表示和行数一样

k=0:向右偏移0个位置

dtype默认值为float

  1. 创建一个等差数列:np.linspace(start,stop,num=50,endpoint=True,retstep=False,dtype=None)

start:开始值

stop:结束值

num=50:等差数列中默认有50个数

endpoint=True:是否包含结束值

retstep=Flase:是否返回等差值

dtype=None:元素类型

  1. 创建一个数值范围的数组(和python的range类似): np.arange(start,stop,step,dtype=None)

start:开始值

stop:结束值

step:步长

dtype=None:元素类型

  1. 创建一个随机整数的多维数组:np.random.randint(low,high=None,size=None,dtype='l')

low:最小值

high:最大值

  1. high=None时,生成的数值在[0,low]区间

size=None,数组形状,默认只输出一个随机值

dtype=None:元素类型

  1. 创建一个都为1的服从标准正态分布的多维数组:np.random.randn(d0,d1,…,dn)

dn:第n个维度的数值

  1. 创建一个服从正态分布的多维数组:np.random.normal(loc=0.0,scale=0.0,size=None)

loc=0.0:均值,对应正态分布的多维数组

scale:标准差,对应分布的宽度,scale越大,正态分布的曲线越矮胖,scale越小,曲线越高瘦

size=None:数组形状

  1. 创建一个元素为 [ 0,1 )的随机数的多维数组:np.random.random(size=None)

size=None:数组形状

  1. 创建一个元素为 [ 0,1 )的随机数的多维数组:np.random.rand(),与np.random.random(size=None)类似:

dn:第n个维度的数值

4.ndarray属性:

ndim:维度

shape:形状(有几个数字就表示几维)

size:总数据数量

dtype:元素类型

5.索引:

一维与列表完全一致,多维时同理,可通过索引修改数组

6.切片:

一维与列表一致,多维同理。

翻转:

二维数组行操作:

二维数组取单行:

二维数组取连续多行:

取不连续多行:

二维数组列操作:

二维数组取单列:

二维数组取连续多列:

取不连续多列:

7.数组变形reshape

-1表示任意剩余维度的长度:

8.级联:np.concatenate()

参数是列表或元组

级联的数组为度必须相同,

可以通过axis参数改变联的方向,axis=0:第一个维度,axis:第二个维度…..

水平级联:

np.hstack()

垂直级联:

np.vstack()

9.拆分:

垂直拆分:np.vsplit()

按照指定位置拆分

水平拆分:np.hsplit()

水平或垂直拆分:split() (axis=0行,axis=1列)

10.数组拷贝:

copy()创建副本

11.聚合操作:

  1. 求和:np.sum

  1. np.max():最大值
  2. np.min():最小值
  3. np.mean():平均值
  4. np.average():平均值
  5. np.median():中位数
  6. np.percentile(n,q=50):百分位数,q=50代表中位数
  7. np.argmax():第一个最大值对应下标
  8. np.argmin():第一个最小值对应的下标
  9. np.power(n,3):次方,此处为3次方
  1. np.std():标准差
  2. np.var():方差
  3. np.nansum():排Nan值求和

12.矩阵操作

基本矩阵操作:

算术运算符:加减乘除、整除(//)、次方(**)、余数(%)

矩阵和矩阵之间运算

数与矩阵运算

矩阵乘积:

矩阵与矩阵相乘,np.dot

矩阵逆运算:np.linalg.inv()

矩阵行列式:np.linalg.det()

矩阵秩:np.linalg.maxtrix_rank(n)

广播机制:

为不同维度的矩阵尽量提供运算的可能性

规则一:为缺失的维度补维度

规则二:缺失元素用已有值填充

其他数学操作:

np.abs():绝对值

np.sqrt():平方根

np.square():平方

np.exp():指数e

np.log():自然对数,以e为底的对数

np.sin():正弦

np.cos():余弦

np.tan():正切

np.round():四舍五入   eg:np.round(n,2)小数点2位四舍五入

np.ceil():向上取整

np.floor():向下取整

np.cumsum():累加

13.排序操作:

np.sort():不改变输入排序

ndarray().sort():本地处理,不占用空间,但是改变输入

14.文件操作:

np.save():保存ndarray到一个npy文件

np.savez():将多个ndarray到一个npz文件中

np.savetxt():保存到csv或txt中

np.load():读取文件

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

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

相关文章

Python实现批量转换图片格式:告别单调乏味的图片圈套!

各位小伙伴们,你是不是也厌倦了那些单调乏味的图片格式?又或者饱受不同格式的图片文件所困扰?别急,今天小编来给你送上一份活泼有趣的Python教程,让我们一起告别单调,迎接多彩多姿的图片世界吧!…

R包:TreeAndLeaf二分类树构建R包

介绍 树形图显示了二叉树,重点是表示树元素之间的层次关系。树状图包含节点、分支(边)、根和叶。根是分支和节点的来源,指示到叶的方向,即终端节点。 树形图布局的大部分空间用于排列分支和内部节点,留给叶子的空间有限。对于大…

异常检测算法

目录 一、异常检测算法功能:二、正态(高斯)分布:三、异常检测算法执行过程:四、如何选择特征:五、评估异常检测算法: 一、异常检测算法功能: 异常检测算法用来检测数据集中的一些异…

OpenGL笔记二之glad加载opengl函数以及opengl-API(函数)初体验

OpenGL笔记二之glad加载opengl函数以及opengl-API(函数)初体验 bilibili赵新政老师的教程看后笔记 code review! 文章目录 OpenGL笔记二之glad加载opengl函数以及opengl-API(函数)初体验1.运行2.重点3.目录结构4.main.cpp5.CMakeList.txt 1.运行 2.重点 3.目录结构 01_GLFW_…

oracle控制文件详解以及新增控制文件

文章目录 oracle控制文件1、 控制文件包含的主要信息如下:2、查看目前系统的控制文件信息,主要是查看相关的字典视图 oracle新增控制文件 oracle控制文件 控制文件是一个很小的二进制文件(10MB左右),含有数据库结构信息,包括数据…

AI安全系列——[第五空间 2022]AI(持续更新)

最近很长时间没有更新,其实一直在学习AI安全,我原以为学完深度学习之后再学AI安全会更加简单些,但是事实证明理论转实践还是挺困难的,但是请你一定要坚持下去,因为“不是所有的坚持都有结果,但总有一些坚持…

uniapp发送Form Data格式请求

设置header的Content-Type为 application/x-www-form-urlencoded 即可 uni.request({url: , // 接口urldata: {input: 写一篇一千字的作文}, // 入参method: POST, // 参数类型header: {"Content-Type": "application/x-www-form-urlencoded"}, // 请求头…

如何构建全生命周期的安全体系架构来确保容器的安全?

容器技术在云原生应用和微服务架构中得到了广泛应用,其轻量、灵活和高效的特点使其成为现代IT环境中的重要工具。然而,尽管容器带来了许多优势,但其安全性问题也不容忽视。接下来跟随博主一起探索如何构建全生命周期的安全体系架构以确保容器…

js 请求blob:https:// 图片

方式1 def get_file_content_chrome(driver, uri):result driver.execute_async_script("""var uri arguments[0];var callback arguments[1];var toBase64 function(buffer){for(var r,nnew Uint8Array(buffer),tn.length,anew Uint8Array(4*Math.ceil(t/…

【LSTM和GRU极简,和最新的TT也就是状态】机器学习模型来学习状态

LSTM(长短期记忆网络)中的关键参数包括输入门、遗忘门、输出门、细胞状态和隐藏状态。以下是如何进行推理计算的示例: LSTM参数和公式 输入门(i_t):决定输入的信息量。 遗忘门(f_t&#xff0…

处理在 electron 中使用开启了懒加载的 el-image 后,窗口最大化或窗口尺寸变化后图片无法显示的问题

文章目录 1、问题描述2、详情动图3、解决思路4、解决方案5、效果展示 1、问题描述 在 electron 中使用 el-image 时,开启了懒加载后,发现只有当窗口滚动后,图片才会显示,即便图片已经处于窗口的可视区域。当拖动窗口使其尺寸变大…

解决ESLint和Prettier冲突的问题

在配置了ESLint的项目中使用Prettier进行格式化可能会出现冲突,不如Prettier配置了使用双引号,ESLint配置了单引号,当然可以一个一个改成一样的配置,但是比较麻烦。我发现可以直接使用ESLint的规则进行格式化。在VSCode配置过程如…

FPGA上板项目(二)——PLL测试

目录 实验内容实验原理实验步骤实验结果 实验内容 将差分时钟信号转化为 192MHz 时钟信号作为输出。 实验原理 PLL,即锁相环,一种反馈控制电路,具有时钟倍频、分频、相位偏移和可编程占空比的功能。 实验步骤 添加 clocking wizard IP核&…

Spring Boot 集成 RabbitMQ

依赖与配置 在 pom.xml 中引入 RabbitMQ 相关依赖 <!-- AMQP 依赖, RabbitMq --> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId><version>3.2.7</version> &…

ElementUI el-select 组件动态设置disabled后,高度变更的问题解决办法

问题描述 Vue2 项目在使用 el-select 组件时&#xff0c;动态将disabled变更为了 true&#xff0c;元素的高度发生了变化。 问题原因 通过浏览器开发人员工具面板&#xff0c;发现&#xff0c;组件内的 input 元素被动态设置了height的样式&#xff1a; 在项目中检查后并…

微软Office PLUS办公插件下载安装指南

微软OfficePLUS插件下载安装指南 简介&#xff1a; OfficePLUS微软官方出品的Office插件 &#xff0c;OfficePLUS拥有30万高质量模板素材&#xff0c;能帮助Word、Excel、Powerpoint、PDF等多种办公软件提升效率&#xff0c;具有智能化、模板质量高、运行快、稳定性强等优点。…

prompt第二讲-langchain实现中英翻译助手

文章目录 prompt模板 (prompt template)langchain 中的prompt模板 (prompt template)langchain实现中英翻译助手 prompt模板 (prompt template) 开篇我介绍了在llm中&#xff0c;通常输入的那个字符串会被我们称之为prompt&#xff0c;下面就是一个中英文翻译助手的prompt例子…

探索智能合约在金融科技中的前沿应用与挑战

随着区块链技术的发展和普及&#xff0c;智能合约作为其核心应用之一&#xff0c;在金融科技&#xff08;FinTech&#xff09;领域中展现出了巨大的潜力和挑战。本文将深入探讨智能合约的基本概念、前沿应用案例&#xff0c;以及面临的技术挑战和发展趋势&#xff0c;旨在帮助读…

解决QT creator中文乱码问题

1.首先设置文本编辑器为UTF-8 先在工具-选项-文本编辑器-behavior部分选择文件编码为UTF-8&#xff0c;紧接着是选择“如果编码是UTF-8则添加”&#xff0c;如下图 2.设置ext code for tools 为system 具体解决办法是 工具-选项-环境-interfaces这一栏有一个“Text code for to…

基于R语言的水文、水环境模型优化技术及快速率定方法与多模型案例

在水利、环境、生态、机械以及航天等领域中&#xff0c;数学模型已经成为一种常用的技术手段。同时&#xff0c;为了提高模型的性能&#xff0c;减小模型误用带来的风险&#xff1b;模型的优化技术也被广泛用于模型的使用过程。模型参数的快速优化技术不但涉及到优化本身而且涉…