# I have a DataFrame with multiple columns of type Union{Missing, String}. What is the most concise manner of converting the non-missing values in Float?

**URL:** <https://discourse.julialang.org/t/i-have-a-dataframe-with-multiple-columns-of-type-union-missing-string-what-is-the-most-concise-manner-of-converting-the-non-missing-values-in-float/54205>\
**Category:** General Usage\
**Created:** [January 29, 2021, 6:15pm UTC](https://discourse.julialang.org/t/i-have-a-dataframe-with-multiple-columns-of-type-union-missing-string-what-is-the-most-concise-manner-of-converting-the-non-missing-values-in-float/54205 "2021-01-29T18:15:53Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![BridgeBot](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bridgebot/32/21491_2.png) [@BridgeBot](https://discourse.julialang.org/u/BridgeBot)\
**Post date:** [January 29, 2021, 6:15pm UTC](https://discourse.julialang.org/t/i-have-a-dataframe-with-multiple-columns-of-type-union-missing-string-what-is-the-most-concise-manner-of-converting-the-non-missing-values-in-float/54205/1 "2021-01-29T18:15:53Z")

</div>

Hi! I have a DataFrame with multiple columns of type Union{Missing, String}. What is the most concise manner of converting the non-missing values in Float?

[(Original message :slack:)](https://julialang.slack.com/archives/C6A044SQH/p1611944102114400?thread_ts=1611944102.114400&cid=C6A044SQH)

---

<div class="post-metadata">

**Author:** ![dmbates](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dmbates/32/44_2.png) [@dmbates](https://discourse.julialang.org/u/dmbates)\
**Post date:** [January 29, 2021, 6:35pm UTC](https://discourse.julialang.org/t/i-have-a-dataframe-with-multiple-columns-of-type-union-missing-string-what-is-the-most-concise-manner-of-converting-the-non-missing-values-in-float/54205/2 "2021-01-29T18:35:59Z")

</div>

If you want to retain the missing values in their original positions I think the best way is

```julia
julia> passmissing(parse).(Float64, ["1", "3.14159", missing])
3-element Vector{Union{Missing, Float64}}:
 1.0
 3.14159
  missing

```

---

<div class="post-metadata">

**Author:** ![jling](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jling/32/212909_2.png) [@jling](https://discourse.julialang.org/u/jling)\
**Post date:** [January 29, 2021, 6:44pm UTC](https://discourse.julialang.org/t/i-have-a-dataframe-with-multiple-columns-of-type-union-missing-string-what-is-the-most-concise-manner-of-converting-the-non-missing-values-in-float/54205/3 "2021-01-29T18:44:03Z")

</div>

copying from slack, turns out OP wants `missing` to become `NaN`:

```julia
f(x) = x===missing ? NaN : parse(Float64, x)
df.mycol = f.(df.mycol)

```
