什么是朱莉娅相当于R的seq(...,length.out = n)

时间:2018-01-22 23:49:00

标签: r julia

从这个链接我可以看出,R的等价于seq是(http://www.johnmyleswhite.com/notebook/2012/04/09/comparing-julia-and-rs-vocabularies/)中的n:m。

seq(a,b, length.out = n)的情况并未涵盖。

例如seq(1, 6, length.out=3)给出了c(1.0, 3.5, 6.0)。这是指定输出数量的一种非常好的方法。

朱莉娅的等同物是什么?

2 个答案:

答案 0 :(得分:2)

您正在寻找linspace功能。请注意,这与matlab / octave中的等效函数同义。

另请注意,这会返回“steprange”类型对象:

julia> a = linspace(1,5,9)
1.0:0.5:5.0

julia> typeof(a)
StepRangeLen{Float64,Base.TwicePrecision{Float64},Base.TwicePrecision{Float64}}

julia> collect(a)
9-element Array{Float64,1}:
 1.0
 1.5
 2.0
 2.5
 3.0
 3.5
 4.0
 4.5
 5.0

PS:类似地,存在range函数,它等同于start:step:stop语法,类似于R中的seq(from=, to=, by=)语法。

答案 1 :(得分:1)

从Julia 1.0开始:

linspace已过时。您仍然可以使用range

julia> range(0, stop = 5, length = 3)
0.0:2.5:5.0

正如@TasosPapastylianou指出的那样,如果您希望将其作为值的向量,则可以使用collect

julia> collect( range(0, stop = 5, length = 3) )
3-element Array{Float64,1}:
0.0
2.5
5.0