A tiny, subprocess-based tool for reading a MS Access database(.rdb) as a Pandas DataFrame.
Project description
# What is this?
A tiny, `subprocess`-based tool for reading a
[MS Access](https://products.office.com/en-us/access)
database (`.rdb`) as a [Pandas](http://pandas.pydata.org/)
[DataFrame](http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.html).
## Installation
To read the database, this package (thinly!) wraps
[MDBTools](http://mdbtools.sourceforge.net/). Since I assume you're already
using Pandas, it should be your only installation requirement.
If you are on `OSX`, install it via [Homebrew](http://brew.sh/):
```sh
$ brew install mdbtools
```
Then, do,
```sh
$ pip install pandas_access
```
## Usage
```python
import pandas_access as mdb
# Listing the tables.
for tbl in mdb.list_tables("my.mdb"):
print(tbl)
# Read a small table.
df = pandas_access.read_table("my.mdb", "MyTable")
# Read a huge table.
accumulator = []
for chunk in pandas_access.read_table("my.mdb", "MyTable", chunksize=10000):
accumulator.append(f(chunk))
```
If you need more power than this, see:
[pyodbc](https://github.com/mkleehammer/pyodbc).
## Testing
I needed this code in a quick pinch -- I had no access to MS Access, and I had
a single `.mdb` file. If someone with Access would like to create a tiny
database for unit-testing purposes, I'd be much obliged.
A tiny, `subprocess`-based tool for reading a
[MS Access](https://products.office.com/en-us/access)
database (`.rdb`) as a [Pandas](http://pandas.pydata.org/)
[DataFrame](http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.html).
## Installation
To read the database, this package (thinly!) wraps
[MDBTools](http://mdbtools.sourceforge.net/). Since I assume you're already
using Pandas, it should be your only installation requirement.
If you are on `OSX`, install it via [Homebrew](http://brew.sh/):
```sh
$ brew install mdbtools
```
Then, do,
```sh
$ pip install pandas_access
```
## Usage
```python
import pandas_access as mdb
# Listing the tables.
for tbl in mdb.list_tables("my.mdb"):
print(tbl)
# Read a small table.
df = pandas_access.read_table("my.mdb", "MyTable")
# Read a huge table.
accumulator = []
for chunk in pandas_access.read_table("my.mdb", "MyTable", chunksize=10000):
accumulator.append(f(chunk))
```
If you need more power than this, see:
[pyodbc](https://github.com/mkleehammer/pyodbc).
## Testing
I needed this code in a quick pinch -- I had no access to MS Access, and I had
a single `.mdb` file. If someone with Access would like to create a tiny
database for unit-testing purposes, I'd be much obliged.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pandas_access-0.0.1.tar.gz
(3.2 kB
view details)
File details
Details for the file pandas_access-0.0.1.tar.gz
.
File metadata
- Download URL: pandas_access-0.0.1.tar.gz
- Upload date:
- Size: 3.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7849140375a8f32037735051dbec55dec0570e1975a405f90b5b75fd582e21ed |
|
MD5 | 82e333b28e9a4bd4af96763c7ccd882b |
|
BLAKE2b-256 | 045d019eb5f99b8d5ebee3e1e8f046482fd5b7c35ba2d02b8e8553798d01cfe9 |