# \[ANN\] TableReader.jl - A fast and simple CSV parser

**URL:** https://discourse.julialang.org/t/ann-tablereader-jl-a-fast-and-simple-csv-parser/22335
**Category:** Package Announcements
**Tags:** package, announcement, data, csv
**Created:** [March 26, 2019, 6:35am UTC](https://discourse.julialang.org/t/ann-tablereader-jl-a-fast-and-simple-csv-parser/22335 "2019-03-26T06:35:50Z")
**Posts on this page:** 5
**Page:** 2

<div class="post-metadata">

### Author: ![proudindiv](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/proudindiv/32/5000_2.png) [@proudindiv](https://discourse.julialang.org/u/proudindiv)
#### Post date: [March 27, 2019, 10:56pm UTC](https://discourse.julialang.org/t/ann-tablereader-jl-a-fast-and-simple-csv-parser/22335/21 "2019-03-27T22:56:49Z")

</div>

Does it handle duplicate colnames from the header? That’s the problem that I’ve had with csv files from the Federal Reserve Bank when trying to use CSV.jl with the queryverse. I’ve had to read the header as a data row and muck with it to get past the failure.

---

<div class="post-metadata">

### Author: ![xiaodai](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/xiaodai/32/15937_2.png) [@xiaodai](https://discourse.julialang.org/u/xiaodai)
#### Post date: [March 27, 2019, 11:10pm UTC](https://discourse.julialang.org/t/ann-tablereader-jl-a-fast-and-simple-csv-parser/22335/22 "2019-03-27T23:10:24Z")

</div>

What if you just skip the first header? And then apply the correct non-dup names to the resultant DataFrame.

---

<div class="post-metadata">

### Author: ![matthieu](https://avatars.discourse-cdn.com/v4/letter/m/da6949/32.png) [@matthieu](https://discourse.julialang.org/u/matthieu)
#### Post date: [March 27, 2019, 11:39pm UTC](https://discourse.julialang.org/t/ann-tablereader-jl-a-fast-and-simple-csv-parser/22335/23 "2019-03-27T23:39:28Z")

</div>

yes it should work (see [this commit](https://github.com/bicycle1885/TableReader.jl/pull/15))

---

<div class="post-metadata">

### Author: ![bicycle1885](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bicycle1885/32/107_2.png) [@bicycle1885](https://discourse.julialang.org/u/bicycle1885)
#### Post date: [March 28, 2019, 2:04am UTC](https://discourse.julialang.org/t/ann-tablereader-jl-a-fast-and-simple-csv-parser/22335/24 "2019-03-28T02:04:10Z")

</div>

Yes, duplicated columns names work. But I’m not sure how it acturally works because it depends on the function of DataFrames.jl. I may rewrite the way to rename columns if they are duplicated.

---

<div class="post-metadata">

### Author: ![proudindiv](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/proudindiv/32/5000_2.png) [@proudindiv](https://discourse.julialang.org/u/proudindiv)
#### Post date: [March 28, 2019, 5:14am UTC](https://discourse.julialang.org/t/ann-tablereader-jl-a-fast-and-simple-csv-parser/22335/25 "2019-03-28T05:14:59Z")

</div>

Thank you, I’ll try it.

[Previous page](https://discourse.julialang.org/t/ann-tablereader-jl-a-fast-and-simple-csv-parser/22335.md?page=1)
