Metadata-Version: 1.0
Name: pysqldf
Version: 1.0.0
Summary: sqldf for pandas
Home-page: https://github.com/airtoxin/pysqldf/
Author: Ryoji Ishii
Author-email: airtoxin@icloud.com
License: MIT
Description: pysqldf
        =======
        
        ``pysqldf`` allows you to query ``pandas`` DataFrames using SQL syntax.
        It works similarly to ``sqldf`` in R. ``pysqldf`` seeks to provide a
        more familiar way of manipulating and cleaning data for people new to
        Python or ``pandas``.
        
        Installation
        ------------
        
        ``$ pip install pysqldf``
        
        Basics
        ------
        
        The main class in pysqldf is ``SQLDF``. ``SQLDF`` accepts 1 enviroment
        variable sets or more parametrs in constructor. - an set of
        session/environment variables (dictionary of valiables, ``locals()`` or
        ``globals()``) - temporary file type - user defined functions - user
        defined aggregate functions
        
        ``pysqldf`` uses `SQLite syntax <http://www.sqlite.org/lang.html>`__.
        Any convertable data to ``pandas`` DataFrames will be automatically
        detected by ``pysqldf``. You can query them as you would any regular SQL
        table.
        
        ::
        
            $ python
            >>> from pysqldf import SQLDF, load_meat, load_births
            >>> sqldf = SQLDF(globals())
            >>> meat = load_meat()
            >>> births = load_births()
            >>> print sqldf.execute("SELECT * FROM meat LIMIT 10;").head()
                              date  beef  veal  pork  lamb_and_mutton broilers other_chicken turkey
            0  1944-01-01 00:00:00   751    85  1280               89     None          None   None
            1  1944-02-01 00:00:00   713    77  1169               72     None          None   None
            2  1944-03-01 00:00:00   741    90  1128               75     None          None   None
            3  1944-04-01 00:00:00   650    89   978               66     None          None   None
            4  1944-05-01 00:00:00   681   106  1029               78     None          None   None
        
        joins and aggregations are also supported
        
        ::
        
            >>> q = "SELECT m.date, m.beef, b.births FROM meat m INNER JOIN births b ON m.date = b.date;"
            >>> print sqldf.execute(q).head()
                                date    beef  births
            403  2012-07-01 00:00:00  2200.8  368450
            404  2012-08-01 00:00:00  2367.5  359554
            405  2012-09-01 00:00:00  2016.0  361922
            406  2012-10-01 00:00:00  2343.7  347625
            407  2012-11-01 00:00:00  2206.6  320195
        
            >>> q = "SELECT strftime('%Y', date) AS year, SUM(beef) AS beef_total FROM meat GROUP BY year;"
            >>> print sqldf.execute(q).head()
               year  beef_total
            0  1944        8801
            1  1945        9936
            2  1946        9010
            3  1947       10096
            4  1948        8766
        
        Documents
        ---------
        
        toplevel exports
        ~~~~~~~~~~~~~~~~
        
        ``SQLDF``
        ^^^^^^^^^
        
        ``load_meat``, ``load_births``
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        
        test
        ----
        
        ``$ nosetests -s -v``
        
Platform: UNKNOWN
