Skip to main content

A curses-based DataFrame viewer inspired by TabView.

Project description

#######
dabbiew
#######
A curses-based DataFrame viewer inspired by TabView

.. image:: doc/images/dabbiew.gif
:scale: 50 %
:alt: alternate text
:align: center

*****
About
*****
This is a side project for now. I work on it because I want more green squares
on my GitHub profile.

The main difference between TabView and DabBiew is that underlying data
structure is a pandas DataFrame instead of a list of lists. This has the
advantage of potentially being able to take advantage of Dask, which supports
"Big Data" collections for distributed environments.

************
Installation
************
::

pip install dabbiew

*****
Usage
*****
Open any csv file::

dabbiew.py file.csv

************
Key Bindings
************
A move command can be repeated by typing the number of times to repeat before
issuing an action. For example, to move down 12 times, simply type ``12j`` (or
``12↓``). To perform a search, open the search bar with ``\``, enter a
substring to match, and hit return (``↵``).

================================================= ==================================
Key Action
================================================= ==================================
``v`` toggle selection mode
``esc`` cancel selection
``h`` ``j`` ``k`` ``l`` ``←`` ``↓`` ``↑`` ``→`` movement keys
``gg``, ``GG`` jump to top, bottom of DataFrame
``^``, ``$`` jump to left, right of DataFrame
``,``, ``.`` decrease, increase selection width
``<``, ``>`` decrease, increase all widths
``t``, ``y`` toggle header, index
``[``, ``]`` decrease, increase index width
``:`` toggle command mode
``/`` toggle search bar
``n``, ``p`` next, previous match
``d`` enter ipdb debug mode
``q`` quit
================================================= ==================================

************
Command Mode
************
Entering command mode (``:``) allows the user to call *any DataFrame method
which returns a Series or DataFrame* on the current selection. For instance, the
user can call ``:sum()``, ``:where(df==42)``, or even ``:where(df==41).sum()``
on a selection. The resulting Series or DataFrame is rendered on screen. To go
back to the previous view, simply quit (``q``). Note the name of the current
DataFrame is always called ``df``.

*************
Documentation
*************
To generate the source code documentation do::

cd doc
make html

and open ``_build/html/index.html``

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dabbiew-0.1.dev20170616.tar.gz (9.5 kB view details)

Uploaded Source

File details

Details for the file dabbiew-0.1.dev20170616.tar.gz.

File metadata

File hashes

Hashes for dabbiew-0.1.dev20170616.tar.gz
Algorithm Hash digest
SHA256 c3f873eed656232ad04845a5f8a86041f9884579de5918a1399bbb10c0ac7580
MD5 6a8dadc6d9fde3cf73c858d2c82ed329
BLAKE2b-256 9048e0850796848eafdc5417667420abf7724fc74a44c879adf52366c0144216

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page