# Dataframe encoding

**URL:** https://discourse.julialang.org/t/dataframe-encoding/20863
**Category:** New to Julia
**Tags:** question
**Created:** [February 16, 2019, 3:31pm UTC](https://discourse.julialang.org/t/dataframe-encoding/20863 "2019-02-16T15:31:13Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![spun7](https://avatars.discourse-cdn.com/v4/letter/s/57b2e6/32.png) [@spun7](https://discourse.julialang.org/u/spun7)
#### Post date: [February 16, 2019, 3:31pm UTC](https://discourse.julialang.org/t/dataframe-encoding/20863/1 "2019-02-16T15:31:13Z")

</div>

```julia
 using Pkg
    Pkg.add("CSV")
    Pkg.add("DataFrames")
    Pkg.add("SQLite")

    using CSV
    using DataFrames
    using SQLite

    path = "/Users/Desktop/Data"

    ref = CSV.File(path, "filename.csv"))
    println(size(ref))
    first(ref, 10)

    Ref = SQLite.DB() 
    SQLite.load!(filename, path) 

    DataFrame(SQLite.Query(ref,"""select * from tablename
          where date > '1999-01-01'
          """))       

```

---

<div class="post-metadata">

### Author: ![ImreSamu](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/imresamu/32/20677_2.png) [@ImreSamu](https://discourse.julialang.org/u/ImreSamu)
#### Post date: [February 16, 2019, 5:43pm UTC](https://discourse.julialang.org/t/dataframe-encoding/20863/2 "2019-02-16T17:43:13Z")

</div>

my guess - **“Orderdate” type is a `BLOB`** - and it is strange …

```sql
$ sqlite3 acme.sqlite 
SQLite version 3.22.0 2018-01-22 18:45:57
Enter ".help" for usage hints.
sqlite> PRAGMA table_info(orders);
0|OrderID|INT|0||0
1|CustomersID|INT|0||0
2|EmployeeID|INT|0||0
3|Orderdate|BLOB|0||0
4|ShipperID|INT|0||0
sqlite> 

```

created with (`Julia 1.0.1`; `SQLite v0.7.0` )

```julia
using CSV, DataFrames, SQLite
orders = CSV.read("orders.csv")
acme = SQLite.DB("acme.sqlite") 
SQLite.load!(orders, acme, "orders") 

```

```julia
$ cat orders.csv
OrderID,CustomersID,EmployeeID,Orderdate,ShipperID
10248,90,5,1996-07-04,3
10249,81,6,1996-07-05,1

```

---

<div class="post-metadata">

### Author: ![ImreSamu](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/imresamu/32/20677_2.png) [@ImreSamu](https://discourse.julialang.org/u/ImreSamu)
#### Post date: [February 16, 2019, 7:36pm UTC](https://discourse.julialang.org/t/dataframe-encoding/20863/3 "2019-02-16T19:36:53Z")

</div>

maybe this is related: [Convert date/datetimes to text when storing · Issue #160 · JuliaDatabases/SQLite.jl · GitHub](https://github.com/JuliaDatabases/SQLite.jl/issues/160)

---

<div class="post-metadata">

### Author: ![spun7](https://avatars.discourse-cdn.com/v4/letter/s/57b2e6/32.png) [@spun7](https://discourse.julialang.org/u/spun7)
#### Post date: [February 16, 2019, 9:23pm UTC](https://discourse.julialang.org/t/dataframe-encoding/20863/4 "2019-02-16T21:23:22Z")

</div>

How do I call `string` on the date values? Should I do it when reading the CSV file to Julia

---

<div class="post-metadata">

### Author: ![spun7](https://avatars.discourse-cdn.com/v4/letter/s/57b2e6/32.png) [@spun7](https://discourse.julialang.org/u/spun7)
#### Post date: [February 16, 2019, 10:15pm UTC](https://discourse.julialang.org/t/dataframe-encoding/20863/5 "2019-02-16T22:15:08Z")

</div>

Tried this, didn’t work

```
    mydateformat = Dates.DateFormat("yyyy-mm-dd")
    Dates.Date.(["orders[:,4]",mydateformat])

```

---

<div class="post-metadata">

### Author: ![ImreSamu](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/imresamu/32/20677_2.png) [@ImreSamu](https://discourse.julialang.org/u/ImreSamu)
#### Post date: [February 17, 2019, 12:12am UTC](https://discourse.julialang.org/t/dataframe-encoding/20863/6 "2019-02-17T00:12:06Z")

</div>

> How do I call `string` on the date values?

simple workaround: try on the CSV reading part - reading as a `String`

- `orders = CSV.read( IOBuffer(csv) ; types=[Int64,Int64,Int64,String,Int64] )`

### My log ( Julia 1.1 )

```julia-auto
julia> using CSV, DataFrames, SQLite
julia> csv = """OrderID,CustomersID,EmployeeID,Orderdate,ShipperID
       10248,90,5,1990-07-04,3
       10249,81,6,1996-07-05,1
       """
"OrderID,CustomersID,EmployeeID,Orderdate,ShipperID\n10248,90,5,1990-07-04,3\n10249,81,6,1996-07-05,1\n"
julia> orders = CSV.read( IOBuffer(csv) ; types=[Int64,Int64,Int64,String,Int64] )
2×5 DataFrame
│ Row │ OrderID │ CustomersID │ EmployeeID │ Orderdate │ ShipperID │
│ │ Int64 │ Int64 │ Int64 │ String │ Int64 │
├─────┼─────────┼─────────────┼────────────┼────────────┼───────────┤
│ 1 │ 10248 │ 90 │ 5 │ 1990-07-04 │ 3 │
│ 2 │ 10249 │ 81 │ 6 │ 1996-07-05 │ 1 │
julia> acme = SQLite.DB()
SQLite.DB(in-memory)
julia> SQLite.load!(orders, acme, "orders")
"orders"
julia> DataFrame(SQLite.Query(acme,"""select * from orders
                 where orderdate = '1996-07-05'
                 """))
1×5 DataFrame
│ Row │ OrderID │ CustomersID │ EmployeeID │ Orderdate │ ShipperID │
│ │ Int64⍰ │ Int64⍰ │ Int64⍰ │ String⍰ │ Int64⍰ │
├─────┼─────────┼─────────────┼────────────┼────────────┼───────────┤
│ 1 │ 10249 │ 81 │ 6 │ 1996-07-05 │ 1 │

```

### code:

```julia
using CSV, DataFrames, SQLite
csv = """OrderID,CustomersID,EmployeeID,Orderdate,ShipperID
10248,90,5,1990-07-04,3
10249,81,6,1996-07-05,1
"""
orders = CSV.read( IOBuffer(csv) ; types=[Int64,Int64,Int64,String,Int64] )
acme = SQLite.DB() 
SQLite.load!(orders, acme, "orders") 
DataFrame(SQLite.Query(acme,"""select * from orders
          where orderdate = '1996-07-05'
          """))  

```

---

<div class="post-metadata">

### Author: ![spun7](https://avatars.discourse-cdn.com/v4/letter/s/57b2e6/32.png) [@spun7](https://discourse.julialang.org/u/spun7)
#### Post date: [February 17, 2019, 1:48am UTC](https://discourse.julialang.org/t/dataframe-encoding/20863/7 "2019-02-17T01:48:58Z")

</div>

ImreSamu - You the man, thanks
