J'aimerais créer un vecteur vide et y ajouter un tableau dans Julia. Comment je fais ça?
x = Vector{Float64}
append!(x, Rand(10))
résulte en
`append!` has no method matching append!(::Type{Array{Float64,1}}, ::Array{Float64,1})
Merci.
Votre variable x
ne contient pas un tableau, mais un type.
x = Vector{Float64}
typeof(x) # DataType
Vous pouvez créer un tableau sous la forme Array(Float64, n)
(Mais attention, il n’est pas initialisé: il contient des valeurs arbitraires) ou zeros(Float64, n)
, Où n
est la taille souhaitée.
Puisque Float64
est la valeur par défaut, nous pouvons le laisser de côté. Votre exemple devient:
x = zeros(0)
append!( x, Rand(10) )
Vous pouvez initialiser un vecteur vide de n'importe quel type en tapant le type devant []. Comme:
Float64[] # Returns what you want
Array{Float64, 2}[] # Vector of Array{Float64,2}
Any[] # Can contain anything
Nouvelle réponse pour Julia 1. append! est obsolète, vous devez maintenant utiliser Push! (array, element) pour ajouter des éléments à un tableau
my_stuff = zeros()
Push!(my_stuff, "new element")