Numpy
文章平均质量分 91
以实战为线索,逐步深入Numpy的各个模块,打造完整Python工作流,提升工程化编码和思维能力。
微小冷
这个作者很懒,什么都没留下…
展开
-
numpy卷积函数convolve
卷积是一种积分变换方法,可理解为滑动平均的推广。numpy中的convolve函数提供了三种模式,区别如图所示。原创 2024-03-09 08:30:00 · 2269 阅读 · 0 评论 -
numpy数组索引
和Python中的其他容器一样,数组通过`[]`索引,支持`:`格式,索引号从0开始,负数表示从后向前索引原创 2024-02-28 08:30:00 · 1165 阅读 · 0 评论 -
python用最小二乘法实现平面拟合
Python基于最小二乘法实现对平面的拟合。原创 2023-11-20 09:30:00 · 1701 阅读 · 1 评论 -
用numpy生成18种特殊数组
全面总结numpy中生成特殊数组的函数,并进行可视化展示原创 2023-09-26 09:00:00 · 403 阅读 · 0 评论 -
Numpy教程
Numpy绝对可以说是支撑Python地位的最重要的包了,几乎所有能叫出名的Python计算库,都不可避免地调用了Numpy,Numpy官网也列出了一些,大致如下图这样,堪称科学计算领域的瑞士军刀的刀把了。原创 2024-03-03 09:09:00 · 1953 阅读 · 0 评论 -
【Python】Numpy数值积分
介绍Numpy中的累加、累乘、连加、连乘、梯形和函数。原创 2023-02-08 08:00:00 · 3704 阅读 · 0 评论 -
Python如何对数组求导(差分)?
Numpy作为著名的数值计算库,自然对数值微积分有着良好的支持,通过diff函数,可以非常便捷地完成数值差分原创 2023-02-03 08:30:00 · 2167 阅读 · 0 评论 -
【Python】Numpy多项式详解
Numpy中封装了六种多项式类,除了常规的多项式外,还有五种在数学、物理中常用的正交多项式,例如Hermite多项式在量子力学中是谐振子的本征态;Legendre多项式可表示点电荷在空间中的激发电势;切比雪夫多项式可用于缓解龙格现象;拉盖尔多项式则是氢原子基函数的径向部分,本文对这些内容做一个总结。原创 2023-01-21 08:00:00 · 5145 阅读 · 0 评论 -
【Python】Numpy用fromfile和tofile读写文件
fromfile和tofile既可以读写二进制文件,也可以读写文本文件,是非常灵活的文件读取函数。原创 2023-01-17 07:30:00 · 10708 阅读 · 0 评论 -
Numpy文件交互:.npy和.npz有什么区别?
`Numpy`提供了以`.npy`为后缀的文件存储方案,与这种文件格式密切相关的读、写函数分别是`np.load`和`np.save`。通过`savez`可以一次性存储多个数组,并可通过`load`以键值对的形式读取出来;如果觉得文件太大,可以通过`savez_compressed`进行压缩。原创 2023-01-20 07:30:00 · 3267 阅读 · 1 评论 -
Python之拉盖尔多项式
拉盖尔多项式是拉盖尔方程的标准解,但其更著名的应用是薛定谔方程在解氢原子的时候,其径向函数最后要乘上一个拉盖尔多项式。原创 2023-01-19 07:45:00 · 2365 阅读 · 1 评论 -
Python处理第一类切比雪夫多项式
Chebyshev多项式是一种非常重要的正交多项式,在逼近理论中有重要应用,第一类切比雪夫多项式的根可用于多项式插值,对弥补龙格现象有很大的帮助。原创 2023-01-15 05:45:00 · 2785 阅读 · 0 评论 -
Python之勒让德多项式
Legendre多项式是一种非常重要的正交多项式,在物理学中有着广泛的应用,例如点电荷在空间中的激发电势就具备勒让德多项式的形式。原创 2023-01-13 07:15:00 · 3322 阅读 · 0 评论 -
Python科学计算库Numpy
`array`类型是Numpy的核心类型,也是Python称为科学计算领域首选语言的关键类型,可以不夸张地说,正是`array`类型的强大与易用性,筑就了Python帝国。原创 2024-01-13 09:56:04 · 1459 阅读 · 1 评论 -
Python之Hermite多项式
Hermite多项式是一种非常重要的正交多项式,尤其在量子力学中,是谐振子的本征态。原创 2023-01-11 06:15:00 · 2651 阅读 · 1 评论 -
【Python】Numpy处理多项式类Polynomial
`Numpy`中提供了多项式模块,里面封装了一些用以快速解决多项式问题的类和函数,其中最重要类的自然是`Polynomial`原创 2023-01-07 06:30:00 · 3359 阅读 · 1 评论 -
Python处理矩阵和线性代数问题
上述表格中所列出的均为经典概念或者经典算法,诸如特征值、特征向量、范数等概念自然不必赘述。为上三角矩阵,则此种方法为QR分解;行的向量时,刚好相当于求解线性方程组。有关矩阵分解的三种方法,在此做一个简略的解释,对于矩阵。则是对角阵,则这种分解方法为奇异值分解。的矩阵时,则对每一列,都会计算一组。其返回值共有4个,分别是拟合得到的。分解,需要注意,并非所有矩阵均有。分解,只有对称的正定矩阵才可以。为其共轭,那么这种分解方式即为。是满秩仿真,那么可以表示为。分别是行数不相等的方阵,而言,如果可以分解为。原创 2022-10-31 14:11:49 · 1972 阅读 · 0 评论 -
Numpy概率分布函数
Numpy中提供了一系列的分布函数,用以生成符合某种分布的随机数,本文对这些分布函数做了一个总结原创 2022-12-27 07:30:00 · 2821 阅读 · 1 评论 -
Python统计之Beta分布
Beta分布就是在抛n次硬币,出现k次正面后,则单次抛硬币出现正面的概率。原创 2022-12-25 07:00:00 · 2597 阅读 · 0 评论 -
【Python】Numpy中的Gumbel分布和Logistic分布
理解为某一随机样本的最大值分布和最小值分布,那么Logistic分布也可以解释为,从指数分布的总体中,抽取容量为n的随机样本,当n趋于无穷大时,样本极差所处的分布状态,其概率密度函数为。为极大值分布,同理可定义极小值分布。Fisher和Tippett证明了极值分布只有三种形式,分别是。,为欧拉常数,接下来可以尝试计算一下。时,得到标准极小值分布,其期望值为。可以调整Gumbel分布的形状。越大,则Gumbel分布越宽。中,Gumbel分布被实现为。均服从Gumbel分布,那么。中抽出的独立同分布样本,且。原创 2022-12-23 06:00:00 · 1957 阅读 · 0 评论 -
Python幂分布、帕累托分布、Zipf分布
帕累托在1906年提出了有关意大利社会财富分配的分配规律,即20%的人口掌握了80%的财富,这个规律后来被发现十分普遍,以至于约瑟夫·朱兰后来将其称为帕累托法则,也被成为八二法则。原创 2022-12-20 08:00:00 · 1925 阅读 · 0 评论 -
Python如何调整数组的形状
数组中的数据在内存里是固定的,但计算时的排列方式却可以随时更改,这也是数组的强大之处。其中,`reshape`和`resize`功能相同,区别是前者返回新数组,后者则直接修改原始数组。原创 2022-12-19 06:30:00 · 2079 阅读 · 0 评论 -
Python统计之Gamma分布
Poisson分布指的是,单个事件在某一刻发生的概率。Gamma分布更进一步,指的是某个事件在某个时刻发生第$n$次的概率。原创 2022-12-14 08:54:44 · 4619 阅读 · 2 评论 -
Python生成多项分布随机数
二项分布最常见的案例就是投硬币,那么投掷硬币可能有两个结果产生,所以谓之二项;如果把硬币改成骰子,由于骰子有6个面,相当于每次对应六个可能发生的结果,从而可以谓之六项分布。总而言之,把一个总体按照某种属性分成有限个类的时候,就会涉及到多项分布。原创 2022-12-12 09:45:00 · 1830 阅读 · 1 评论 -
Numpy二项分布和泊松分布
如果假定在有限时间(0,1)内进行n次伯努利实验,那么每次伯努利实验所占用的时间为1/n,按照自然规律,一件事情肯定是时间越长越容易发生,所以在加上有限时间这个限定之后,可从离散的二项分布自然过渡到连续的泊松分布。原创 2022-12-09 08:15:00 · 1770 阅读 · 0 评论 -
Python均匀分布和三角形分布
毫无疑问,均匀分布是最简单的分布函数,在$(a,b)$区间内,所有点差不多构成了一个矩形,所以均匀分布也叫矩形分布。和矩形分布相似,概率密度函数为三角形的分布,就是三角形分布。原创 2022-12-07 09:00:00 · 2712 阅读 · 1 评论 -
Numpy文本读写:loadtxt,savetxt,genfromtxt
numpy为文本的输入输出提供了一组对偶函数,即loadtxt和savetxt,本文详细解读这两个函数外加genfromtxt原创 2022-12-06 09:47:41 · 2587 阅读 · 0 评论 -
Python卡方分布
均服从标准正态分布,则这k个随机变量的平方和构成一个新变量,这个新变量服从。可以生成非中心的卡方分布。和卡方分布相比,非中心卡方分布多了一个非负的参数。值不断增大,卡方分布越来越接近正态分布。而且卡方分布常用的统计特征也与。可以明显地看到期望、方差以及中位数和k值的关联性。如果考虑方差对随机变量的影响,则可得到非中心的。是一个不可避免的参数,一般称之为自由度,在。可以生成一组随机数进行特征值的检验。得到在不同组随机变量的卡方分布为。个互相独立的随机变量。原创 2022-11-30 08:15:00 · 2296 阅读 · 1 评论 -
Python生成正态分布的随机数
正态分布,最早由棣莫弗在二项分布的渐近公式中得到,而真正奠定正态分布地位的,却是高斯对测量误差的研究。测量是人类与自然界交互中必不可少的环节,测量误差的普遍性,确立了正态分布作用范围的广泛性,或许正因如此,正态分布才又被称为Gauss分布。多元高斯分布的主要参数仍为期望和方差,但所谓多元分布,在坐标层面的表现就是坐标轴的个数,也就是向量维度。逆高斯分布的说法容易引发歧义,实际上,逆高斯分布和高斯分布相当于布朗运动研究中的两个视角。其中,正态分布、对数正态分布以及逆高斯分布的概率密度函数如下表。原创 2022-11-27 08:15:00 · 9977 阅读 · 0 评论 -
Python威布尔分布
中,提供了按照威布尔分布生成的随机数生成器,并且提供了与威布尔分布关系密切的瑞利分布、指数分布以及拉普拉斯分布,列表如下。威布尔分布,即Weibull distribution,又被译为韦伯分布、韦布尔分布等,是仅分布在正半轴的连续分布。,同时延展到整个坐标轴,那么就会变成Laplace分布。接下来对比一下指数分布和拉普拉斯分布。不断变大,威布尔分布逐渐向右移动。根据概率密度表达式,可以发现,当。时,威布尔分布变为瑞利分布;上表中,概率密度表达式中的。若将指数分布的中心移动到。原创 2022-11-24 08:45:00 · 5852 阅读 · 1 评论 -
Numpy的五种标准随机分布:正态学生柯西指数伽马
标准学生分布的概率密度表达式相对比较复杂,而且还包括一个参数df。,标准差为1的正态分布,其概率密度表达式为。表示伽马函数,为阶乘函数的解析延拓,当。标准柯西分布的概率密度表达式为。标准指数分布的概率密度表达式为。标准伽马分布的概率密度表达式为。中提供了下面五种标准分布。取值不同时分布情况的变化。标准正态分布即为中心在。接下来可以看一下,当。原创 2022-11-23 07:00:00 · 1897 阅读 · 0 评论 -
【Python】Numpy傅里叶变换总结
Fourier变换极其逆变换在数学上的定义如下F(ω)=∫−∞∞f(t)e−iωtdtf(t)=π2∫−∞∞F(ω)eiωtdωF(ω)=∫−∞∞f(t)e−iωtdtf(t)=2π∫−∞∞F(ω)eiωtdωnumpy中封装了快速Fourier算法,即FFT,根据数值范围、正反变换以及数组维度,共有下表这些函数可供使用,其前缀i。原创 2022-11-22 08:15:00 · 2702 阅读 · 1 评论 -
Numpy字符串数组总结
用于分割的函数,功能是将字符串数组中的每个字符串,都拆分成字符串列表,相应地原来的字符串数组,也就变成了列表数组。中的同名函数,相当于对字符串数组中的每个字符串,都调用一次。均为格式转换函数,将输入的字符串列表什么的转成字符串数组;前缀表示对字符串类别进行判断,返回值均为布尔型数组。中封装的这些函数,均以字符串数组作为操作对象。中自带的那些函数有着高度的重合,其最大的区别是,对字符串按行划分,其余函数均可指定分隔符,以。模块中,封装了一些处理字符串数组的函数。字符串函数的名字也有一点规律,原创 2022-11-21 09:08:46 · 5066 阅读 · 0 评论 -
【Python】Numpy生成坐标网格
轴的坐标,这种情况下如果想绘制三维散点图,就需要生成图像像素对应的坐标网格。更加简单的一种数据结构,其特点是直接通过魔法函数实现了坐标网格的生成。如果想干脆一点,只是生成从0开始的等间隔的坐标网格,那么这里最推荐的是。轴坐标是体现在像素栅格中的,从而图像矩阵中的像素强度,其实表示的是。当然,这个维度可以是任意的,而且步长也可以是任意的,,这个函数只需输入维度,就可以完成网格的创建。的子类,但生成的数组不同,直接看案例。之间的对应关系,但对于图像而言,其。中,最常用的坐标网格生成函数,就是。原创 2022-11-16 09:10:19 · 4828 阅读 · 0 评论 -
Numpy创建特殊数组,包括但不限于〇阵和单位阵
所有创建数组的函数中,都有一个可选参数dtype,表示创建的数组的数据类型。指定维度empty,eye,identity,ones,zeros,full模仿维度empty_like,ones_like,zeros_like,full_like特殊矩阵diag,diagflat,tri,tril,triu,vander。原创 2022-11-13 08:22:21 · 2133 阅读 · 0 评论 -
【Python】Numpy排序函数详解
np.sort是最常用的排序函数,其输入参数中,axis可以指定排序的坐标轴,其最常用的使用方法如下numpy中针对数组排序,实现了多种不同的算法,在sort中,通过kind参数可以选择排序方案kind速度最坏性能稳定性1O(n2)O(n^2)O(n2)否'heapsort'3✅否2✅是'timsort’'2✅是上表中✅表示O(nlogn)O(n\log n)O(nlogn)。由于本文主要讲解np.sort的用法,所以下面堆这四种kind。原创 2022-11-14 09:42:05 · 6241 阅读 · 0 评论 -
【python】Numpy统计函数总结
这四对协方差,对于数组与其自身的协方差,其协方差表达式退化为。0在1前面,是第0个区间。这和标准差的公式是极为相近的,Numpy中的标准差公式是。在理解协方差与方差之后,就可以理解相关系数,记。列数组之间的协方差,那么相关系数可表示为。功能相同,但只输出直方图的边缘,即上面的。长度为10,表示每个区间中的元素个数;,得到的是一个矩阵,分别用于描述。时,数组与其自身的相关系数为1。的长度为11,表示区间的起止值。首先回忆一下协方差的概念,对于。两组样本,其协方差可以表示为。中对应区间的位置,例如。原创 2022-11-05 16:08:39 · 2040 阅读 · 0 评论 -
Numpy数学计算函数,精简备忘
列成下面这张表的形式,对我来说是最为便捷的,这倒不是因为我已对下表中大部分函数烂熟于心,就算我是个新手,那么我想,我在调用数学函数时可能出现的最大问题,无非是想要执行某个功能,却不知道函数的名字。这时,如果查看下表,只要眼睛扫一下就会解决问题。原创 2024-02-04 08:30:00 · 2046 阅读 · 0 评论 -
【Python】Numpy生成等差数组
是Numpy中使用频率超高的一个数组生成器,其输入参数可以为一个、两个或者三个。的逻辑是相似的,都是在某个区间内等间隔生成数组,只不过。这种区别可能过于微秒,画个图可能理解起来更加容易。的等间隔,是对数意义上的等间隔,其等价于。最后,总结一下这四个函数的区别,首先是。参数,可以指定对数的底,例如。同样是等间隔生成对数,但和。原创 2022-11-15 09:50:52 · 5469 阅读 · 0 评论 -
Numpy 逻辑计算和位运算
下面这张表列出了Numpy中几乎所有常用的逻辑函数和位处理函数,这些函数都有着明确的数学概念,其主要的输入输出均符合来自数学公式的直觉,大部分数组操作则支持通过axis来调整作用的坐标轴,所以这些函数并不需要分条解析,甚至从我的角度来说,过于琐碎的文字堆积,将这上百个函数写他个几页甚至十几页,反而会影响阅读。也不列外,但二进制表示的浮点数,并不能精确地描述每个数值,所以,与自然数1最接近的二进制浮点数,彼此相差大约。这个很容易理解,在编程语言中,所有数值都是通过二进制表示的,所以这个。原创 2024-01-06 08:30:00 · 1685 阅读 · 0 评论