Cython将Numpy数组转为自定义结构体
技术背景 前面我们写过几篇关于Cython的文章,例如Cython计算谐振势、Cython与C语言的结合、Cython调用CUDA Kernel函数。Cython有着非常Pythonic的编程范式,又具备着接近于C语言的性能,因此在很多对于性能有要求的Python软件中都会使用到Cython的性...[2024/8/7]
NumPy 舍入小数、对数、求和和乘积运算详解
舍入小数 在 NumPy 中,主要有五种方法来舍入小数: 截断 去除小数部分,并返回最接近零的浮点数。使用 trunc() 和 fix() 函数。 示例: import numpy as np arr = np.trunc([-3.1666, 3.6667]) print(arr) ...[2024/6/12]
NumPy 均匀分布模拟及 Seaborn 可视化教程
均匀分布 简介 均匀分布是一种连续概率分布,表示在指定范围内的所有事件具有相等的发生概率。它常用于模拟随机事件,例如生成随机数或选择随机样本。 参数 均匀分布用两个参数来定义: a:下限,表示分布的最小值。 b:上限,表示分布的最大值。 公式 均匀分布的概率密度函数 (PDF) 为: ...[2024/5/31]
NumPy 正态分布与 Seaborn 可视化指南
正态分布(高斯分布) 简介 正态分布(也称为高斯分布)是一种非常重要的概率分布,它描述了许多自然和人为现象的数据分布情况。正态分布的形状呈钟形,其峰值位于平均值处,两侧对称下降。 特征 正态分布可以用两个参数来完全描述: 均值(μ):表示数据的平均值,分布的峰值位于 μ 处。 标准差(σ)...[2024/5/24]
NumPy 随机数据分布与 Seaborn 可视化详解
随机数据分布 什么是数据分布? 数据分布是指数据集中所有可能值出现的频率,并用概率来表示。它描述了数据取值的可能性。 在统计学和数据科学中,数据分布是分析数据的重要基础。 NumPy 中的随机分布 NumPy 的 random 模块提供了多种方法来生成服从不同分布的随机数。 生成离散分布随机...[2024/5/22]
NumPy 数组排序、过滤与随机数生成详解
NumPy 数组排序 排序数组 排序数组意味着将元素按特定顺序排列。顺序可以是数字大小、字母顺序、升序或降序等。 NumPy 的 ndarray 对象提供了一个名为 sort() 的函数,用于对数组进行排序。 示例: import numpy as np arr = np.array([...[2024/5/21]
NumPy 数组切片及数据类型介绍
NumPy 数组切片 NumPy 数组切片用于从数组中提取子集。它类似于 Python 中的列表切片,但支持多维数组。 一维数组切片 要从一维数组中提取子集,可以使用方括号 [] 并指定切片。切片由起始索引、结束索引和可选步长组成,用冒号 : 分隔。 语法: arr[start:end:s...[2024/5/8]
借助Numpy,优化Pandas的条件检索代码
Numpy其实是最早的处理数据的Python库,它的核心ndarray对象,是一个高效的n维数组结构。 通过这个库,可以高效的完成向量和矩阵运算,由于其出色的性能,很多其他的数据分析,科学计算或者机器学习相关的Python库都或多或少的依赖于它。 Pandas就是其中之一,Pandas充分利...[2024/3/22]
Numpy计算近邻表时间对比
技术背景 所谓的近邻表求解,就是给定N个原子的体系,找出满足cutoff要求的每一对原子。在前面的几篇博客中,我们分别介绍过CUDA近邻表计算与JAX-MD关于格点法求解近邻表的实现。虽然我们从理论上可以知道,用格点法求解近邻表,在复杂度上肯定是要优于传统的算法。本文主要从Python代码的实现...[2024/1/10]
【大语言模型基础】60行Numpy教你实现GPT-原理与代码详解
写在前面 本文主要是对博客 https: jaykmody.com/blog/gpt-from-scratch/ 的精简整理,并加入了自己的理解。 中文翻译:https: jiqihumanr.github.io/2023/04/13/gpt-from-scratch/#circle=on ...[2023/12/26]
numpy和pandas的基本用法
安装numpy模块 pip install numpy 可以通过导入numpy模块来使用它 import numpy as np 1.创建数组: a = np.array([1, 2, 3, 4, 5]) # 从列表创建一维数组 b = np.zeros((3, 3)) # 创建一个...[2023/8/29]
numpy中计算相关系数的np.corrcoef
np.corrcoef的作用 计算 Pearson 乘积矩相关系数。它可以用来分析给定数据集中各个变量之间的线性相关程度,返回一个相关系数矩阵,相关系数矩阵中的值介于 -1 到 1 之间,包括 -1 和 1。这些值表明了变量之间的线性相关性及其方向。具体来说,正值接近 1 表示正向线性相关,负...[2023/8/29]
使用numpy计算分子内坐标
技术背景 当我们打开一个用于表示分子构象的xyz文件或者pdb文件,很容易可以理解这种基于笛卡尔坐标的空间表征方法。但是除了笛卡尔坐标表示方法之外,其实也有很多其他的方法用于粗粒化或者其他目的的表征方法,比如前一篇文章中所介绍的在AlphaFold2中所使用的残基的刚体表示方法。而这种刚体坐标,...[2023/6/9]
【技术积累】Python中的NumPy库【一】
NumPy库是什么 NumPy是Python科学计算的核心库之一,用来进行科学计算,数值分析等矩阵运算。主要提供了以下几种功能: 1.多维数组(ndarray)对象,可以进行快速的数值计算和数组操作; 2.广播(Broadcast)功能,可以对不同形状的数组进行算术运算; 3.数学函数库,...[2023/6/9]
在树莓派上使用numpy实现简单的神经网络推理,pytorch在服务器或PC上训练好模型保存成numpy格式的数据,推理在树莓派上加载模型
这几天又在玩树莓派,先是搞了个物联网,又在尝试在树莓派上搞一些简单的神经网络,这次搞得是mlp识别mnist手写数字识别 训练代码在电脑上,cpu就能训练,很快的: 1 import torch 2 import torch.nn as nn 3 import torch.optim...[2023/5/30]
Python NumPy 广播(Broadcast)
广播(Broadcast)是 numpy 对不同形状(shape)的数组进行数值计算的方式, 对数组的算术运算通常在相应的元素上进行。 如果两个数组 a 和 b 形状相同,即满足 a.shape == b.shape,那么 a*b 的结果就是 a 与 b 数组对应位相乘。这要求维数相同,且各维...[2023/5/12]
关于Python常用函数中NumPy的使用
目录1. txt文件2. CSV文件3.成交量加权平均价格 = average()函数4. 算数平均值函数 = mean()函数5. 时间加权平均价格6. 最大值和最小值7. 统计分析8. 股票收益率 1. txt文件 (1) 单位矩阵 即主对角线上的元素均为1,其余元素均为0的正方形矩阵。...[2023/3/29]
numpy中hstack vstack stack concatenate函数示例详解
目录大纲1、concatenate()2、stack()3、vstack()4、hstack()5、tf中的stack() 大纲 本文主要介绍一下numpy中的几个常用函数,包括hstack()、vstack()、stack()、concatenate()。 1、concatenate(...[2023/2/24]
numpy.unique()使用方法
目录1. 参数说明2. 示例2.1. 一维数组2.2. 二维数组2.3. 返回索引2.4. 重建输入矩阵参考文献 numpy.unique() 函数接受一个数组,去除其中重复元素,并按元素由小到大返回一个新的无元素重复的元组或者列表。 1. 参数说明 numpy.unique(ar, ret...[2023/2/20]
NumPy迭代数组的实现
目录迭代数组一、单数组迭代1. 使用 nditer 访问数组的每个元素2. 控制数组元素的迭代顺序3. 修改数组值4. 使用外部循环,跟踪索引或多索引5. 以特定数据类型迭代二、广播数组迭代 迭代数组 NumPy中引入了 nditer 对象来提供一种对于数组元素的访问方式。 一、单数组迭代 ...[2023/2/20]
numpy.insert()的具体使用方法
目录1. 参数说明2. 示例2.1. 插入一列,值为标量2.2. 插入一列,值为一维矩阵2.3. 插入多列,值为标量2.4. 输入为一维向量2.5. 输入为矩阵 numpy.insert()主要用于向矩阵中插入行或列。对于多维矩阵,可以沿任意一个轴插入元素。 1. 参数说明 numpy.in...[2023/2/10]
numpy中的norm()函数求范数实例
目录numpy norm()函数求范数举例说明numpy求解范数(numpy.linalg.norm)以及各阶范数详解语法Parameters各范数详析总结 numpy norm()函数求范数 函数: norm(x, ord = None, axis = None, keepdims = F...[2023/2/6]
Numpy 数组索引的实现
目录一、整数索引二、切片索引2.1、一维数组切片三、整数数组索引3.1、 一维数组的整数数组索引3.2、多维数组的整数数组索引四、布尔索引五、花式索引 数组索引是指使用方括号([])来索引数组值,numpy提供了比常规的python序列更多的索引工具。除了按整数和切片索引之外,数组可以由整数数组索引...[2023/1/20]
从 Numpy+Pytorch 到 TensorFlow JS:总结和常用平替整理
demo展示 这是一个剪刀石头布预测模型,会根据最近20局的历史数据训练模型,神经网络输入为最近2局的历史数据。 如何拥有较为平滑的移植体验? 保持两种语言,和两个框架的API文档处于打开状态,并随时查阅:Python,JavaScript;Pytorch,TensorFlow JS(用浏...[2022/11/23]
报错No?module?named?numpy问题的解决办法
目录前沿解决解决方法1:方法2:(强行安装更新更高的版本)总结 前沿 最近开始学习python了,由于要简单处理一下图片,奈何能C++力太差,openCV上手有点难,想学习一下py简单的处理一下图片就好了。拿到程序之后,报错No module named numpy what?下面是解决方法 ...[2022/8/23]
纯numpy卷积神经网络实现手写数字识别的实践
前面讲解了使用纯numpy实现数值微分和误差反向传播法的手写数字识别,这两种网络都是使用全连接层的结构。全连接层存在什么问题呢?那就是数据的形状被“忽视”了。比如,输入数据是图像时,图像通常是高、长、通道方向上的3维形状。但是,向全连接层输入时,需要将3维数据拉平为1维数据...[2022/8/3]
纯numpy数值微分法实现手写数字识别
手写数字识别作为深度学习入门经典的识别案例,各种深度学习框架都有这个例子的实现方法。我这里将不用任何深度学习现有框架,例如TensorFlow、Keras、pytorch,直接使用Python语言的numpy实现各种激活函数、损失函数、梯度下降的方法。 程序分为两部分,首先是手写数字数据的准备...[2022/8/3]
python数学建模之Numpy?应用介绍与Pandas学习
目录Numpy学习1 Numpy 介绍与应用1-1Numpy是什么2 NumPy Ndarray 对象3 Numpy 数据类型4 Numpy 数组属性Pandas学习1 pandas新增数据列2 Pandas数据统计函数3 Pandas对缺失值的处理总结 Numpy学习 1 Numpy 介绍与应...[2022/7/4]
python数学建模是加深Numpy和Pandas学习
目录前言Numpy 学习1-numpy.array2-numpy.empty3-numpy.zeros4-numpy.ones NumPy 从已有的数组创建数组1-numpy.asarray2-numpy.frombuffer3-numpy.fromiterNumPy 从数值范围创建数组1...[2022/7/4]
python数学建模(SciPy+?Numpy+Pandas)
目录前言SciPy 学习1-SciPy基本操作1-1求解非线性方程(组)1-2积分1-3最小二乘解1-4最大模特征值及对应的特征向量Numpy学习(续)1-Numpy 数学函数1-1三角函数2-舍入函数2-1 numpy.around()2-2 numpy.floor()2-3 numpy.ceil...[2022/7/4]
Python数据分析之NumPy常用函数使用详解
目录文件读入1、保存或创建新文件 2、读取csv文件的函数loadtxt3、常见的函数4、股票的收益率等5、对数收益与波动率6、日期分析总结 本篇我们将以分析历史股价为例,介绍怎样从文件中载入数据,以及怎样使用NumPy的基本数学和统计分析函数、学习读写文件的方法,并尝试函数式编程和Num...[2022/5/23]
Python数据分析?Numpy?的使用方法
目录简介多维数组创建数组的数据类型数组维度 简介 使用 Python 进行数据分析时,比较常用的库有 Numpy、Pandas、Matplotlib,本篇文章就来说一下 Numpy 的使用方法,编辑器就使用上篇文章说过的 Jupyter。 Numpy 是一个Python扩展库,专门做科学计算...[2022/5/23]
Python中的?Numpy?数组形状改变及索引切片
目录1.改变数组形状2.索引和切片 1.改变数组形状 数组的shape属性返回一个元组,包括维度以及每个轴的元素数量,Numpy 还提供了一个reshape()方法,它可以改变数组的形状,返回一个新的数组。 例如: a = np.array([1,2,3,4,5,6,7,8]) 转换...[2022/5/23]
如何对numpy?矩阵进行通道间求均值
目录对numpy 矩阵进行通道间求均值numpy求平均值的两种方法不一样 对numpy 矩阵进行通道间求均值 给定一个3x2x2得矩阵,得到一个2x2的矩阵,其中对应元素是通道间的均值 import numpy as np a = np.array([ [[1...[2022/5/9]
numpy中np.dstack()、np.hstack()、np.vstack()用法
目录np.dstack()np.hstack()np.vstack() 在写代码时,经常会遇到多个矩阵数组拼接的情况,numpy里dstack, hstack, vstack, 都有拼接的作用,那么这些函数是怎么执行的,他们的结果又如何呢? np.dstack() 按深度顺序堆叠arrays...[2022/3/2]
Numpy中创建数组的9种方式小结
目录1、使用empty方法创建数组2、使用array创建数组3、使用zero ones创建数组4、使用arange创建数组5、使用linspace创建数组6、使用numpy.random.rand创建数组7、使用numpy.random.randn创建数组8、使用numpy.random.randi...[2022/3/2]
python中的Numpy二维数组遍历与二维数组切片后遍历效率比较
在python-numpy使用中,可以用双层 for循环对数组元素进行访问,也可以切片成每一行后进行一维数组的遍历。 代码如下: import numpy as np import time NUM = 160 a=np.random.random((NUM,NUM)) s...[2022/3/1]
python中NumPy的安装与基本操作
目录Numpy是什么NumPy的安装多维数组创建多维数组多维数组的常用属性多维数组的基本操作数组的算术运算数组的自身运算随机数组索引、切片、迭代总结 Numpy是什么 很简单,Numpy是Python的一个科学计算的库,提供了矩阵运算的功能,其一般与Scipy、matplotlib一起使用。其实...[2022/3/1]
Python编程利用Numpy和PIL库将图片转化为手绘
目录主要采用的技术点读取图片,转化为数组计算 x,y,z 轴梯度值,归一化加入光源效果导出图片,并保存 主要采用的技术点 Python + Numpy + PIL 在正文代码开始前,大家先看看最初原图和转换手绘风图片前后对比。 当然了,我先查了手绘的三个基本特点: 图...[2021/9/27]
PyCharm导入numpy库的几种方式
numpy导入 有两种方式可以导入: 第一种:输入代码块 在Terminal输入pip install numpy 第二种:视图 1.打开settings 2、打开Python Interpreter 3、输入numpy,点击Install Packag...[2021/6/21]
浅谈numpy.where() 的用法和np.argsort()的用法说明
numpy.where() 有两种用法: 1. np.where(condition, x, y) 满足条件(condition),输出x,不满足输出y。 如果是一维数组,相当于[xv if c else yv for (c,xv,yv) in zip(condition,x,y)] ...[2021/5/10]
Python机器学习三大件之一numpy
一、前言 机器学习三大件:numpy, pandas, matplotlib Numpy(Numerical Python)是一个开源的Python科学计算库,用于快速处理任意维度的数组。 Numpy支持常见的数组和矩阵操作。对于同样的数值计算任务,使用Numpy比直接使用Python要...[2021/5/10]
numpy 实现返回指定行的指定元素的位置索引
先上代码,主要语句为np.where(b[c]==1), 详细解释如下: import numpy as np b = np.array([[-2,-3,0,0,0,6,4,1],[88,1,0,0,0,6,4,2],[99,6,0,0,1,6,4,2]]) # 三行八列的数组b...[2021/5/10]
numpy.array 操作使用简单总结
import numpy as np numpy.array 常用变量及参数 dtype变量,用来存放数据类型, 创建数组时可以同时指定。 shape变量, 存放数组的大小, 这人值是可变的, 只要确保无素个数不变的情况下可以任意修改。(-1为自动适配, 保证个数不...[2019/11/8]
numpy数组做图片拼接的实现(concatenate、vstack、hstack)
两种方法拼接 #img = np.vstack((img, img2)) # vstack按垂直方向,hstack按水平方向 img = np.concatenate((img, img2), axis=0) # axis=0 按垂直方向,axis=1 按水平方向 统...[2019/11/8]
Python list与NumPy array 区分详解
1. 数据类型 type() #!/usr/bin/env python # -*- coding: utf-8 -*- # Yongqiang Cheng from __future__ import absolute_import from __future__ i...[2019/11/6]
Python numpy tensorflow 中的 点乘 和 矩阵乘法
1)点乘(即“ * ”) ---- 各个矩阵对应元素做乘法 若 w 为 m*1 的矩阵,x 为 m*n 的矩阵,那么通过点乘结果就会得到一个 m*n 的矩阵。 若 w 为 ...[2019/10/31]
Numpy中对向量、矩阵的使用详解
在下面的代码里面,我们利用numpy和scipy做了很多工作,每一行都有注释,讲解了对应的向量/矩阵操作。 归纳一下,下面的代码主要做了这些事: 创建一个向量 创建一个矩阵 创建一个稀疏矩阵 选择元素 展示一个矩阵的属性 对多个元素同时应用某种操作 ...[2019/10/30]
Python之Numpy的超实用基础详细教程
Numpy在python中属于非常常用的包,无论是机器学习搭配pandas,还是数据可视化搭配pylab都是很正常的搭配。 Numpy numpy的官方中文文档:NumPy 中文 NumPy是使用Python进行科学计算的基础软件包。除其他外,它包括: 功能强大的N维数组...[2019/10/23]
基于python解线性矩阵方程(numpy中的matrix类)
这学期有一门运筹学,讲的两大块儿:线性优化和非线性优化问题。在非线性优化问题这里涉及到拉格朗日乘子法,经常要算一些非常变态的线性方程,于是我就想用python求解线性方程。查阅资料的过程中找到了一个极其简单的解决方式,也学到了不少东西。先把代码给出。 import numpy as n...[2019/10/21]