内置在朱莉娅的地理空间中

问题描述 投票:0回答:2

在 NumPy 中,有一个函数用于返回两个数字

n
begin
之间以对数间隔排列的
end
点范围。 在 Julia 中你可以定义这样的东西:

10 .^(range(log10(begin), log10(end), n)

但是有这样的内置函数吗?

numpy julia
2个回答
4
投票

我在这里找到了一些相关问题:https://discourse.julialang.org/t/lazy-logspace-object/70091https://discourse.julialang.org/t/how-to-do-logspace -in-julia-v-1-0-x/17452.

基本上,logspace 没有内置的简写方法,但是您可以使用

Iterators
实现类似的功能。

logspace(start, last, count) = Iterators.map(exp10, range(log10(start), log10(last), count))

0
投票

Julia 1.11 终于有了一个内置的

logrange
函数,正如上面所要求的。在 Julia 的早期版本中,可以从 Compat.jl 包中获取它:

julia> using Compat

julia> logrange(1/4, 16, length=5)
5-element Compat.LogRange{Float64, Base.TwicePrecision{Float64}}:
  0.25
  0.7071067811865476
  2.0
  5.656854249492381
 16.0

这类似于Python中的

numpy.geomspace
。但就像 Julia 的
range
LinRange
一样,它返回一个特殊的惰性向量类型,允许随机访问,而不需要为所有值分配所有空间。

© www.soinside.com 2019 - 2024. All rights reserved.