【重磅收藏】numpy生成实数序列方法汇总

简介: 【重磅收藏】numpy生成实数序列方法汇总

在利用python在进行数据分析的时候,经常需要按照某种规则快速生成实数序列,尤其是在学习matplotlib绘图的时候,需要模拟生成数据,然后开始绘制。

那么在python中有哪些方式生成实数序列呢?本文将为大家一一介绍。

在numpy中有多种生成序列的函数,分别是arange、linspace、logspace和geomspace,那么这几种方式有哪些区别呢?我们在日常开发中如何选择合适的方法来生成需要的实数呢?

In [1]: importnumpyasnp

1. arange

numpy.arange([start, ]stop, [step, ]dtype=None)

start默认是0,step默认是1.

这个函数的用法非常简单,给定一个start, 一个stop, 一个步长,然后就可以得到你想要的数据。

注意:

  • 生成的数据不包含stop的值。


案例1:直接给定stop,start和step采用默认值。

从0开始,按照步长为1,生成数据,到3结束,注意不含3.

In [32]:

np.arange(3)

Out[32]:

array([0, 1, 2])


案例2:指定start和stop,按照默认的step=1的方式来生成数据。

In [33]:

np.arange(1,3)


Out[33]:

array([1, 2])


案例3:指定start、stop和step的值。

start为1,stop为3,步长为0.1.


In [35]:

np.arange(1,3,0.1)



接下来我们将和大家一起来看看另外的三个***space的用法

2. linspace

numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)

linspace的作用是生成等差数列。

num默认为50, endpoint默认为True, retstep默认是False即不返回步长大小

endpoint指的是生成的序列中是否包含stop这个数,True就是包含,False就是不包含。


案例1:1-50之间生成50个数。

此处并没有指定生成的实数序列的个数,采用的是默认值50个。

In [4]:

np.linspace(1,50)



案例2:1-50之间生成25个数

In [36]:

np.linspace(1,50,25)



案例3:1-50之间生成25个数,并打印步长信息。

In [37]:

np.linspace(1,50,retstep=True)



案例4:1-50之间生成25个数,不含50,且打印步长。

In [40]:

np.linspace(1,50,endpoint=False,retstep=True)



3. logspace

numpy.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None)

logspace的作用是生成以底数为base,指数为start-stop的实数序列,其用法与linspace非常类似,其中base参数指定了底数。


案例1:生成1-50,底数为10的指数序列。

In [41]:

np.logspace(1,50)


案例2:生成1-50,底数为2的序列。

In [42]:

np.logspace(1,50,base=2)


案例3:1-50区间内生成5个数,底数为2的序列。

In [44]:

np.logspace(1,50,num=5,base=2)



4. geomspace

numpy.geomspace(start, stop, num=50, endpoint=True, dtype=None)

geomspace的作用是生成等比数列,指定start、stop和序列个数,即可生成等比数列。


案例1:1-50区间内,生成默认的50个数的等比数列。

In [49]:

np.geomspace(1,50)



案例2:1-16区间内,生成5个数的等比数列。

In [50]:

np.geomspace(1,16,num=5)


总结

本文为大家介绍了利用numpy生成实数序列的四种方法,分别是arange,linspace,logspace和geomspace。今后在不同的应用场景下可以选择不同的方式来生成数据。

目录
相关文章
|
6月前
|
数据采集 机器学习/深度学习 存储
【机器学习】数据清洗——基于Numpy库的方法删除重复点
【机器学习】数据清洗——基于Numpy库的方法删除重复点
213 1
|
11月前
|
Python
NumPy生成数组的方法
NumPy生成数组的方法
96 0
|
数据挖掘 索引 Python
【Python】数据分析:numpy的常用方法
【Python】数据分析:numpy的常用方法
74 0
|
5月前
|
数据采集 算法 BI
解析numpy中的iscomplex方法及实际应用
在 NumPy 中,iscomplex 函数用于检查数组中的每个元素是否为复数。这个函数在处理包含复数数据的数组时非常有用,尤其是在科学计算和工程领域,这些领域经常需要区分实数和复数。 在数学和工程领域,复数是一种基本的数值类型,它们扩展了实数系统,包含了实部和虚部。在 NumPy 中,复数由 numpy.complex128 或 numpy.complex64 类型表示。numpy.iscomplex 函数提供了一种简便的方式来检查数组中的元素是否为复数。这对于数据类型判断、数据清洗和后续的数值分析非常重要。
|
6月前
|
存储 索引 Python
NumPy 数组创建方法与索引访问详解
NumPy 的 `ndarray` 是其核心数据结构,可通过 `array()`、`zeros()`、`ones()` 和 `empty()` 函数创建。`array()` 可以将列表等转换为数组;`zeros()` 和 `ones()` 生成全零或全一数组;`empty()` 创建未定义值的数组。此外,还有 `arange()`、`linspace()`、`eye()` 和 `diag()` 等特殊函数。练习包括使用这些函数创建特定数组。
161 1
|
6月前
|
数据可视化 数据挖掘 C++
数据分析综合案例讲解,一文搞懂Numpy,pandas,matplotlib,seaborn技巧方法
数据分析综合案例讲解,一文搞懂Numpy,pandas,matplotlib,seaborn技巧方法
144 2
|
6月前
|
搜索推荐 数据挖掘 数据处理
NumPy数组统计与排序方法全览
【4月更文挑战第17天】本文介绍了NumPy在Python中的数组统计和排序功能。主要包括计算平均值、标准差和方差的`np.mean()`, `np.std()`, `np.var()`方法,以及求最大值、最小值、百分位数的功能。在排序方面,讲解了基本排序的`np.sort()`,获取排序索引的`np.argsort()`,逆序排序和随机排序的方法。这些工具对于数据分析和科学计算十分实用,能有效提升数据处理效率。
|
6月前
|
Python
Python21day学习---numpy生成数组的若干方法----day19
Python21day学习---numpy生成数组的若干方法----day19
94 0
|
机器学习/深度学习 数据挖掘 Python
深度学习实战 numpy生成实数序列
深度学习实战 numpy生成实数序列
81 0
|
存储 C++ 索引