Python numpy.linespace和存储箱之间的不均匀间距
im使用numpy.linespace帮助生成数据箱。 我想要20个0到1000000之间的箱子,每个箱子大小为20k numpy.linespace提供了不均匀的存储箱大小Python numpy.linespace和存储箱之间的不均匀间距,python,numpy,Python,Numpy,im使用numpy.linespace帮助生成数据箱。 我想要20个0到1000000之间的箱子,每个箱子大小为20k numpy.linespace提供了不均匀的存储箱大小 bins = np.linspace(start = 0, stop =1000000, num = 50, dtype = 'int64') 这将产生如下所示的箱子(前5个箱子) 你知道怎么才能拿到2000万4千万6百万8百万的垃圾箱吗 感谢您的帮助和建议只需在样本数中添加一个即可 >>> bins
bins = np.linspace(start = 0, stop =1000000, num = 50, dtype = 'int64')
这将产生如下所示的箱子(前5个箱子)
你知道怎么才能拿到2000万4千万6百万8百万的垃圾箱吗
感谢您的帮助和建议只需在样本数中添加一个即可
>>> bins = np.linspace(start = 0, stop = 1000000, num = 51, dtype = 'int64')
>>> bins
array([ 0, 20000, 40000, 60000, 80000, 100000, 120000,
140000, 160000, 180000, 200000, 220000, 240000, 260000,
280000, 300000, 320000, 340000, 360000, 380000, 400000,
420000, 440000, 460000, 480000, 500000, 520000, 540000,
560000, 580000, 600000, 620000, 640000, 660000, 680000,
700000, 720000, 740000, 760000, 780000, 800000, 820000,
840000, 860000, 880000, 900000, 920000, 940000, 960000,
980000, 1000000])
使用
arange
代替linspace
:
In [456]: np.arange(0,1000001,20000)
Out[456]:
array([ 0, 20000, 40000, 60000, 80000, 100000, 120000,
140000, 160000, 180000, 200000, 220000, 240000, 260000,
280000, 300000, 320000, 340000, 360000, 380000, 400000,
420000, 440000, 460000, 480000, 500000, 520000, 540000,
560000, 580000, 600000, 620000, 640000, 660000, 680000,
700000, 720000, 740000, 760000, 780000, 800000, 820000,
840000, 860000, 880000, 900000, 920000, 940000, 960000,
980000, 1000000])
In [457]: _.shape
Out[457]: (51,)
arange
不包括终点,因此我添加了1linspace
包括端点(但可以关闭),但默认情况下会生成浮点。np.linspace(20000,1000000,50)
应该执行此操作linspace
,默认情况下包括端点。因此,您需要在指定计数时考虑到这一点。即使如此,指定int
dtype也可能很棘手linspace
使用浮点计算,然后截断<如果您想要整数值,code>arange可能更安全。太好了,谢谢!请原谅我的无知,但我不明白为什么这样做。此指令旨在生成[start,stop]范围内平均分布的num数字。因此,如果你想生成从0到3(0,1,2,3)的数字,你必须有4(3+1)个数字。
In [456]: np.arange(0,1000001,20000)
Out[456]:
array([ 0, 20000, 40000, 60000, 80000, 100000, 120000,
140000, 160000, 180000, 200000, 220000, 240000, 260000,
280000, 300000, 320000, 340000, 360000, 380000, 400000,
420000, 440000, 460000, 480000, 500000, 520000, 540000,
560000, 580000, 600000, 620000, 640000, 660000, 680000,
700000, 720000, 740000, 760000, 780000, 800000, 820000,
840000, 860000, 880000, 900000, 920000, 940000, 960000,
980000, 1000000])
In [457]: _.shape
Out[457]: (51,)