Metadata-Version: 2.4
Name: jmp-convert
Version: 0.1.0
Classifier: Development Status :: 3 - Alpha
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Rust
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering
Requires-Dist: pyarrow>=14
License-File: LICENSE
License-File: NOTICE
Summary: Read JMP data tables (.jmp) without JMP, and convert them to CSV or Parquet
Keywords: jmp,csv,parquet,arrow,pyarrow
Author: David Mathers
License-Expression: MIT
Requires-Python: >=3.9
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Issues, https://github.com/davidmathers/jmp-convert/issues
Project-URL: Repository, https://github.com/davidmathers/jmp-convert

# jmp-convert

Read JMP data tables (`.jmp`) without JMP, and convert them to CSV or Parquet.

```python
import jmp_convert

table = jmp_convert.read_jmp("data.jmp")          # a pyarrow.Table
df = table.to_pandas()                             # or polars.from_arrow(table)

jmp_convert.convert("data.jmp")                     # writes data.csv
jmp_convert.convert("data.jmp", "out.parquet", format="parquet", snake_case=True)
```

Installing the package also installs the `jmp-convert` command (`jmp-convert --help`).

Options (keyword-only): `snake_case`, `value_labels`, `allow_unsupported`, and for
`convert` also `full_precision`. Errors raise `jmp_convert.JmpError`, or its subclass
`jmp_convert.UnsupportedError` for content this package cannot decode.

## Development

```bash
cd python
uv venv && uv pip install maturin pyarrow pytest
uv run maturin develop --release
uv run pytest
```

