我正在尝试运行std(list),其中list是一个Float数组,但是我收到下一个错误:
“ MethodError:Array {Float64,1}类型的对象不可调用 使用方括号[]索引数组。”
使用[]时:
“ ArgumentError:无效索引:0.4”
哪个是我数组的第一个值。
我猜想在使用float参数时“ std()”无效,反正使其正常工作?
(现在我正在使用juliabox 0.6.2)
答案 0 :(得分:2)
这在JuliaBox 0.6.2中对我有用:
VERSION
v"0.6.2"
A = [1 2 3 4 5]
1×5 Array{Int64,2}:
1 2 3 4 5
s = std(A)
1.5811388300841898
正如Hckr在评论中指出的那样,您可能已经掩盖了std
这样的东西:
std = [1 2 3 4 5]
1×5 Array{Int64,2}:
1 2 3 4 5
std(std)
MethodError: objects of type Array{Int64,2} are not callable
Use square brackets [] for indexing an Array.
正如BogumiłKamiński在评论中指出的那样,在Julia 1.0.0中,您需要执行using Statistics
才能访问std
函数:
VERSION
v"1.0.0"
A = [1 2 3 4 5]
1×5 Array{Int64,2}:
1 2 3 4 5
# Error here because using Statistics is needed in 1.0.0.
std(A)
UndefVarError: std not defined
Stacktrace:
[1] top-level scope at In[2]:1
using Statistics
std(A)
1.5811388300841898