Python numpy库 —— linspace()的用法

我们可以将 linspace() 函数理解成是用来创建一个等差数列的,或者说将一个区间的数值等分成N份,下面举个栗子:

将 1~10 等分成10份,那么最后的结果是怎样的呢?
1,2,3,4,5,6,7,8,9,10
最后创建出来的就是这样一个等差序列;

我们还是首先看一下函数原型是怎样的:


英文好的自己看,不好的随着我一起看下去;我们发现这个函数一共有7个参数,除了前两个,其他的都有初始值了,那么他们分别代表什么意思呢?

  • start:数据的起始点,即区间的最小值
  • stop:数据的结束点,即区间的最大值
  • num:数据量,可以理解成分割了多少份
  • endpoint:说明是否包含结束点
  • retstep:是否给出数据间隔,即如果是True,那么不仅会创建数据序列,在最后还会给出数据间隔是多少
  • dtype:指定序列的数据类型
  • axis:其实这个参数我也没搞懂是什么意思,只知道值为0或者-1,对于结果貌似没有什么变化,这个后面再补充

接下来我们就通过程序来感受一下:

  1. 最重要两个参数:start 和 stop
    import numpy as np
    
    print(np.linspace(1,10))
    
    # 输出结果:
    # [ 1.          1.18367347  1.36734694  1.55102041  1.73469388  1.91836735
    #   2.10204082  2.28571429  2.46938776  2.65306122  2.83673469  3.02040816
    #   3.20408163  3.3877551   3.57142857  3.75510204  3.93877551  4.12244898
    #   4.30612245  4.48979592  4.67346939  4.85714286  5.04081633  5.2244898
    #   5.40816327  5.59183673  5.7755102   5.95918367  6.14285714  6.32653061
    #   6.51020408  6.69387755  6.87755102  7.06122449  7.24489796  7.42857143
    #   7.6122449   7.79591837  7.97959184  8.16326531  8.34693878  8.53061224
    #   8.71428571  8.89795918  9.08163265  9.26530612  9.44897959  9.63265306
    #   9.81632653 10.        ]
    我们发现头尾是我们设置的1和10,但是一共分了50份,这是因为这个函数 num参数的默认值为50;
  2. 设定份数
    import numpy as np
    
    print(np.linspace(1,10,10))
    print(np.linspace(1,10,num=10))
    
    # 输出结果:
    # [ 1.  2.  3.  4.  5.  6.  7.  8.  9. 10.]

    我们可以通过 num参数设置数据量,如果是按照参数顺序写下来,可以直接写参数值,如果跳了参数,那么就需要注明属性了,这点就不赘述了;

  3. 设置是否包含结束点
    import numpy as np
    
    print(np.linspace(1,10,10,endpoint=False))
    
    # 输出结果:
    # [1.  1.9 2.8 3.7 4.6 5.5 6.4 7.3 8.2 9.1]
    我们发现将endpoint设置为False,stop就不会被包含进去,那么也可以知道,默认情况下,stop是会被包含进去的;
  4. 我想要知道序列的间隔是多少怎么办?
    import numpy as np
    
    a = np.linspace(1,10,10,retstep=True)
    
    print(a)
    
    # 输出结果:
    # (array([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.]), 1.0)
    我们可以看见最后的结果是一个元组,元组的第一个值即为创建的序列,第二个值为序列之间的间隔;
  5. 设置生成序列的数据类型
    import numpy as np
    
    print(np.linspace(1,10,10,dtype='int'))
    print(np.linspace(1,10,10,dtype='str'))
    
    # 输出结果:
    # [ 1  2  3  4  5  6  7  8  9 10]
    # ['1.0' '2.0' '3.0' '4.0' '5.0' '6.0' '7.0' '8.0' '9.0' '10.0']

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值