# \[ANN\] PandasJSON

**URL:** <https://discourse.julialang.org/t/ann-pandasjson/94430>\
**Category:** Package Announcements\
**Created:** [February 10, 2023, 8:04pm UTC](https://discourse.julialang.org/t/ann-pandasjson/94430 "2023-02-10T20:04:30Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![cjdoris](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cjdoris/32/213133_2.png) [@cjdoris](https://discourse.julialang.org/u/cjdoris)\
**Post date:** [February 10, 2023, 8:04pm UTC](https://discourse.julialang.org/t/ann-pandasjson/94430/1 "2023-02-10T20:04:30Z")

</div>

> **[GitHub - cjdoris/PandasJSON.jl: Read/write Pandas dataframes](https://github.com/cjdoris/PandasJSON.jl)**
>
> Read/write Pandas dataframes. Contribute to cjdoris/PandasJSON.jl development by creating an account on GitHub.

Here’s a little package for reading and writing tabular data in any of the Pandas JSON formats. It’s not too hard to parse such files yourself but:

- This integrates with the Tables.jl ecosystem.
- This handles datetimes for you.
- This supports many of the same keyword arguments as Pandas, taking away any guesswork.

I wouldn’t particularly recommend using this format ordinarily but sometimes the internet or a colleague only provides data in this form.

A quick snippet from the readme:

```julia
julia> using PandasJSON, DataFrames

julia> println(read("example.json", String))
{"y":{"1":false,"0":true,"2":null},"x":{"1":2,"0":1,"2":3}}

julia> df = PandasJSON.read("example.json", DataFrame)
3×2 DataFrame
 Row │ x y
     │ Int64 Bool?
─────┼────────────────
   1 │ 1 true
   2 │ 2 false
   3 │ 3 missing

```
