gpt4 book ai didi

python - 在python中生成对数刻度

转载 作者:行者123 更新时间:2023-12-04 09:56:14 26 4
gpt4 key购买 nike

我需要生成一个列表,其中包含 10^a 和 10^b 之间的 logscale 刻度,并且 a < b,但是到目前为止我找不到任何方便的函数。所以我继续手动完成:

 # List containing 0.1, 0.2, 0.3, ..., 800, 900, 1000 
x = np.arange(0.1, 1.0, 0.1).tolist() +
np.arange(1, 10, 1).tolist() +
np.arange(10, 100, 10).tolist() +
np.arange(100, 1000, 100).tolist()

有没有一种方法可以做到这一点?

最佳答案

这可以通过 broadcasting 实现——

N = 4 # number of "levels"
out = ((10**np.arange(N)[:,None])*np.arange(0.1, 1.0, 0.1)).ravel()

另一个与 np.linspace ——
np.linspace([0.1,1,10,100],[1,10,100,1000],9, endpoint=False, axis=1).ravel()

N 概括——
s = [10**i for i in range(-1,N)]
np.linspace(s[:-1],s[1:],9, endpoint=False, axis=1).ravel()

关于python - 在python中生成对数刻度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61917302/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com