This aspect of Julia is still a bit unclear to me; currently how I’ve been doing is, for instance, defining one method for vector of numbers:

```
function f(X::Vector{<:Number}; n::Int=10)
X = collect(range(minimum(X), stop=maximum(X), length=n))
end
f([1,6, 4])
f([1,6, missing])
```

(which doesn’t work for the vector containg missing values.)

Thus, I create a second version:

```
function f(X::AbstractVector{>:Missing}; n::Int=10)
X = f(collect(skipmissing(X)), n=n)
end
f([1,6, missing])
```

which removes the missings and performs the function. However, I feel like it’s not the most optimal or Julian way of doing it…