# CSV.read() deprecated keyword argument

**URL:** <https://discourse.julialang.org/t/csv-read-deprecated-keyword-argument/24095>\
**Category:** Data\
**Tags:** csv\
**Created:** [May 10, 2019, 11:02pm UTC](https://discourse.julialang.org/t/csv-read-deprecated-keyword-argument/24095 "2019-05-10T23:02:54Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![VincentTam](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/vincenttam/32/8358_2.png) [@VincentTam](https://discourse.julialang.org/u/VincentTam)\
**Post date:** [May 10, 2019, 11:02pm UTC](https://discourse.julialang.org/t/csv-read-deprecated-keyword-argument/24095/1 "2019-05-10T23:02:55Z")

</div>

In [Hayden Klok’s sample code](https://github.com/h-Klok/StatsWithJuliaBook/blob/master/1_chapter/usingR.jl#L3-L5), there’s a deprecated argument for `CSV.read()`.

```julia
# from https://github.com/h-Klok/StatsWithJuliaBook/blob/master/1_chapter/usingR.jl#L3-L5
using CSV, DataFrames, RCall
data1 = CSV.read("machine1.csv", header=false, allowmissing=:none)[:,1]

```

Even though the commands can be run, the system gives a few warnings.

```julia
 Info: Precompiling RCall [6f49c342-dc21-5d91-9882-a32aef131414]
┌ Warning: `allowmissing` is a deprecated keyword argument
└ @ CSV ~/.julia/packages/CSV/MKiwM/src/CSV.jl:157

```

I tried searching Julia Data’s doc page and its GitHub project, but there’s little said above this deprecated argument.

What can be done to update the syntax?

---

<div class="post-metadata">

**Author:** ![AsafManela](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/asafmanela/32/4863_2.png) [@AsafManela](https://discourse.julialang.org/u/AsafManela)\
**Post date:** [May 10, 2019, 11:57pm UTC](https://discourse.julialang.org/t/csv-read-deprecated-keyword-argument/24095/2 "2019-05-10T23:57:25Z")

</div>

I think you don’t need it anymore. What does it generate for a csv column with no missing values?

---

<div class="post-metadata">

**Author:** ![quinnj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/quinnj/32/11_2.png) [@quinnj](https://discourse.julialang.org/u/quinnj)\
**Post date:** [May 11, 2019, 12:10am UTC](https://discourse.julialang.org/t/csv-read-deprecated-keyword-argument/24095/3 "2019-05-11T00:10:44Z")

</div>

Yeah, `allowmissing` isn’t needed anymore. CSV.jl can now “perfectly type” a column when parsing a file and `allowmissing` was just an argument from before when you wanted to specify what should happen when CSV.jl “guessed wrong” at the type of a column.

So the short answer: take out that keyword argument.

---

<div class="post-metadata">

**Author:** ![VincentTam](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/vincenttam/32/8358_2.png) [@VincentTam](https://discourse.julialang.org/u/VincentTam)\
**Post date:** [May 11, 2019, 9:16am UTC](https://discourse.julialang.org/t/csv-read-deprecated-keyword-argument/24095/4 "2019-05-11T09:16:41Z")

</div>

Excuse me for late response. I was helping others to [set up Staticman](https://github.com/Roothash41/Roothash41.github.io/pull/1), a free and static commenting system on (personal) GitHub/GitLab pages.

> [@AsafManela](#):
>
> I think you don’t need it anymore. What does it generate for a csv column with no missing values?

Normal output apart from warning messages:

```julia
┌ Warning: `allowmissing` is a deprecated keyword argument
└ @ CSV ~/.julia/packages/CSV/MKiwM/src/CSV.jl:157
┌ Warning: `allowmissing` is a deprecated keyword argument
└ @ CSV ~/.julia/packages/CSV/MKiwM/src/CSV.jl:157
┌ Warning: `allowmissing` is a deprecated keyword argument
└ @ CSV ~/.julia/packages/CSV/MKiwM/src/CSV.jl:157
R ANOVA f-value: 10.516968568709089
R ANOVA p-value: 0.00014236168817139574

```

The `machine1.csv` actually refers to `data/machine1.csv` in the linked GitHub repo. This CSV file has _no_ missing values.
