np.linspace() np.logspace() np.arange() 区别

 np.linspace() np.logspace() np.arange() 区别

1.np.linspace() 生成(start,stop)区间指定元素个数num的list,均匀分布

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

Docstring:

Return evenly spaced numbers over a specified interval.

 

Returns `num` evenly spaced samples, calculated over the interval [`start`, `stop`].

 

The endpoint of the interval can optionally be excluded.

 

Parameters

----------

start : scalar  #scalar:标量

    The starting value of the sequence.

stop : scalar  

    The end value of the sequence, unless `endpoint` is set to False.

    In that case, the sequence consists of all but the last of ``num + 1``

    evenly spaced samples, so that `stop` is excluded.  Note that the step

    size changes when `endpoint` is False.

num : int, optional  #oprional:可选项

    Number of samples to generate. Default is 50. Must benon-negative.

endpoint : bool, optional  #是否包括右边界点

    If True, `stop` is the last sample. Otherwise, it is not included.

    Default is True.

retstep : bool, optional  #返回步长

 

np.linspace(2.0, 3.0, num=5, retstep=True)

(array([ 2.  ,  2.25,  2.5 ,  2.75,  3.  ]),0.25)

np.linspace(2.0, 3.0, num=5)

    array([ 2.  ,  2.25,  2.5 ,  2.75,  3.  ])

np.linspace(2.0, 3.0, num=5, endpoint=False)

    array([ 2. ,  2.2,  2.4,  2.6,  2.8])

 

    If True, return (`samples`, `step`), where `step` is the spacing

    between samples.

dtype : dtype, optional

    The type of the output array.  If `dtype` is not given, infer the data

    type from the other input arguments.

# Graphical illustration:

import numpy as np

import matplotlib.pyplot as plt

N = 8

y = np.zeros(N)

x1 = np.linspace(0, 10, N, endpoint=True)

x2 = np.linspace(0, 10, N, endpoint=False)

plt.plot(x1, y, 'o')

plt.plot(x2, y + 0.5, 'o')

plt.ylim([-0.5, 1]) #y

(-0.5, 1)

plt.show()

 

 

 

2.np.logspace() log分布间距生成list

Signature: np.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None)
Docstring:
Return numbers spaced evenly on a log scale.

Parameters
----------
start : float  #基底base的start次幂作为左边界
    ``base ** start`` is the starting value of the sequence.
stop : float  #基底base的stop次幂作为右边界
    ``base ** stop`` is the final value of the sequence, unless `endpoint`
    is False.  In that case, ``num + 1`` values are spaced over the
    interval in log-space, of which all but the last (a sequence of
    length ``num``) are returned.
num : integer, optional
    Number of samples to generate.  Default is 50.
endpoint : boolean, optional
    If true, `stop` is the last sample. Otherwise, it is not included.
    Default is True.
base : float, optional  #基底
    The base of the log space. The step size between the elements in
    ``ln(samples) / ln(base)`` (or ``log_base(samples)``) is uniform.
    Default is 10.0.
dtype : dtype
    The type of the output array.  If `dtype` is not given, infer the data
    type from the other input arguments.

Returns
-------
samples : ndarray
    `num` samples, equally spaced on a log scale.

Examples

--------

np.logspace(2.0, 3.0, num=4)

    array([  100.        ,   215.443469  ,   464.15888336,  1000.        ])

np.logspace(2.0, 3.0, num=4, endpoint=False)

    array([ 100.        ,  177.827941  ,  316.22776602,  562.34132519])

np.logspace(2.0, 3.0, num=4, base=2.0)

    array([ 4.        ,  5.0396842 ,  6.34960421,  8.        ])

 

Notes
-----
Logspace is equivalent to the code:

y = np.linspace(start, stop, num=num, endpoint=endpoint)
power(base, y).astype(dtype)

 

 

 

# Graphical illustration:

import numpy as np

import matplotlib.pyplot as plt

N = 10

x1 = np.logspace(0.1, 1, N, endpoint=True)

x2 = np.logspace(0.1, 1, N, endpoint=False)

y = np.zeros(N)

plt.plot(x1, y, 'o')

plt.plot(x2, y + 0.5, '<')

plt.ylim([-0.5, 1])

(-0.5, 1)

plt.show()


 

 

 

 

 

3.np.arange() 生成(start,stop)区间指定步长step的list

 

np.arange(3)

array([0, 1, 2])

np.arange(3.0)

array([ 0.,  1.,  2.])

np.arange(3,7)

array([3, 4, 5, 6])

np.arange(3,7,2)

array([3, 5])

 

Docstring:

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

Return evenly spaced values within a given interval.

 

When using a non-integer step, such as 0.1, the results will often not

be consistent.  It is better to use ``linspace`` for these cases.

 

 

Parameters

----------

start : number, optional

    Start of interval.  The interval includes this value.  The default

    start value is 0.

stop : number

    End of interval.  The interval does not include this value, except

    in some cases where `step` is not an integer and floating point

    round-off affects the length of `out`.  # round-off:四舍五入

step : number, optional

    Spacing between values.  For any output `out`, this is the distance

    between two adjacent values, ``out[i+1] - out[i]``.  The default

    step size is 1. If `step` is specified, `start` must also be given.# adjacent:相邻

dtype : dtype

    The type of the output array.  If `dtype` is not given, infer the data

    type from the other input arguments.

 

Returns

-------

arange : ndarray

    Array of evenly spaced values.

 

    For floating point arguments, the length of the result is

    ``ceil((stop - start)/step)``.  Because of floating point overflow,

    this rule may result in the last element of `out` being greater

    than `stop`.  #ceil():向上取整

 

 

 

 

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: `np.linspace()`是NumPy库中的一个函数,用于在指定的间隔内返回等间隔的数字序列。 该函数的语法为: ```python numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0) ``` 其中,参数的含义如下: - `start`:序列的起始值。 - `stop`:序列的结束值。 - `num`:生成的等间隔样例数,默认为50。 - `endpoint`:序列中是否包含`stop`值,如果为`True`,则包含;如果为`False`,则不包含。默认为`True`。 - `retstep`:如果为`True`,则返回样例之间的间距;如果为`False`,则不返回。默认为`False`。 - `dtype`:返回数组的数据类型。如果没有指定,则根据其他参数的情况推断数据类型。 - `axis`:生成样例的轴,默认为0。 示例如下: ```python import numpy as np # 生成一个包含5个等间隔样例的数组 x = np.linspace(0, 1, 5) print(x) ``` 输出结果为: ``` [0. 0.25 0.5 0.75 1. ] ``` 该函数的返回值是一个包含等间隔样例的一维数组。 ### 回答2: np.linspace()是NumPy库中的一个函数,用于在指定的范围内生成等间隔的一维数组。 它的语法如下: np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None) - start:起始值 - stop:结束值 - num:在指定范围内生成的样本数量,默认为50 - endpoint:是否在结束值处包含该值,默认为True,即包含结束值 - retstep:是否返回步长,默认为False,不返回步长 - dtype:返回数组的数据类型,如果没有指定则会根据输入情况自动推断 np.linspace()会在指定的范围内生成num个等距的样本点,这些样本点会均匀地分布在指定的起始值和结束值之间。如果endpoint为True,则最后一个数值为结束值,否则不包含结束值。可以通过设置retstep参数为True来返回数组的步长。 np.linspace()常用于生成一些等分的数值范围,例如在数据可视化中使用,可以指定x轴或y轴的数值范围。它也可以用于生成一些特定范围的等间隔的样本数据,例如对某个函数进行采样,或者用于线性插值等应用场景。 总之,np.linspace()是NumPy库中很有用的一个函数,可以生成等间隔的一维数组,应用领域很广泛。 ### 回答3: np.linspace()是NumPy库中的一个函数,用于在指定的起始值和结束值之间生成等间隔的数值。 它的语法为:np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None) 参数说明: - start:起始值 - stop:结束值 - num:要生成的等间隔数值的个数,默认为50 - endpoint:是否包含结束值,默认为True,即包含结束值 - retstep:是否返回步长,默认为False,即不返回步长 - dtype:返回的数组的数据类型,默认为None,即由生成的数值自动推断数据类型 np.linspace()函数会在指定的起始值和结束值之间生成num个等间距的数值。如果endpoint参数为True,则结果数组中会包含结束值;如果endpoint参数为False,则结果数组不会包含结束值。 返回的数组中的数值会按照等间距分布,即相邻的两个数值之间的差值是相等的。 如果retstep参数为True,则会在返回结果中同时返回步长,步长的值会自动计算得出。而如果retstep参数为False,则不返回步长。 np.linspace()函数非常适用于生成一维数组,特别是在绘制图形时经常用到,可以用来生成均匀分布的x轴数据。 需要注意的是,由于np.linspace()生成的数值是等间距的,可能存在浮点数精度问题。如果对精度要求较高,可以使用其他函数来生成数值,如np.arange()或np.logspace()。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值