gspread-dataframe


Namegspread-dataframe JSON
Version 3.3.1 PyPI version JSON
download
home_pagehttps://github.com/robin900/gspread-dataframe
SummaryRead/write gspread worksheets using pandas DataFrames
upload_time2023-06-16 18:35:15
maintainer
docs_urlhttps://pythonhosted.org/gspread-dataframe/
authorRobin Thomas
requires_python
licenseMIT
keywords spreadsheets google-spreadsheets pandas dataframe
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI
coveralls test coverage No coveralls.
            gspread-dataframe
-----------------

.. image:: https://badge.fury.io/py/gspread-dataframe.svg
    :target: https://badge.fury.io/py/gspread-dataframe

.. image:: https://travis-ci.com/robin900/gspread-dataframe.svg?branch=master
    :target: https://travis-ci.com/robin900/gspread-dataframe

.. image:: https://img.shields.io/pypi/dm/gspread-dataframe.svg
    :target: https://pypi.org/project/gspread-dataframe

.. image:: https://readthedocs.org/projects/gspread-dataframe/badge/?version=latest
    :target: https://gspread-dataframe.readthedocs.io/en/latest/?badge=latest
    :alt: Documentation Status

This package allows easy data flow between a worksheet in a Google spreadsheet
and a Pandas DataFrame. Any worksheet you can obtain using the ``gspread`` package
can be retrieved as a DataFrame with ``get_as_dataframe``; DataFrame objects can
be written to a worksheet using ``set_with_dataframe``:

.. code:: python

    import pandas as pd
    from gspread_dataframe import get_as_dataframe, set_with_dataframe

    worksheet = some_worksheet_obtained_from_gspread_client

    df = pd.DataFrame.from_records([{'a': i, 'b': i * 2} for i in range(100)])
    set_with_dataframe(worksheet, df)

    df2 = get_as_dataframe(worksheet)

The ``get_as_dataframe`` function supports the keyword arguments
that are supported by your Pandas version's text parsing readers,
such as ``pandas.read_csv``. Consult `your Pandas documentation for a full list of options <https://pandas.pydata.org/docs/reference/api/pandas.read_csv.html>`__. Since the ``'python'`` engine in Pandas is used for parsing,
only options supported by that engine are acceptable:

.. code:: python

    import pandas as pd
    from gspread_dataframe import get_as_dataframe

    worksheet = some_worksheet_obtained_from_gspread_client

    df = get_as_dataframe(worksheet, parse_dates=True, usecols=[0,2], skiprows=1, header=None)

Formatting Google worksheets for DataFrames
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

If you install the ``gspread-formatting`` package, you can additionally format a Google worksheet to suit the  
DataFrame data you've just written. See the `package documentation for details <https://github.com/robin900/gspread-formatting#formatting-a-worksheet-using-a-pandas-dataframe>`__, but here's a short example using the default formatter:

.. code:: python

    import pandas as pd
    from gspread_dataframe import get_as_dataframe, set_with_dataframe
    from gspread_formatting.dataframe import format_with_dataframe

    worksheet = some_worksheet_obtained_from_gspread_client

    df = pd.DataFrame.from_records([{'a': i, 'b': i * 2} for i in range(100)])
    set_with_dataframe(worksheet, df)
    format_with_dataframe(worksheet, df, include_column_header=True)


Installation
------------

Requirements
~~~~~~~~~~~~

* Python 2.7, 3+
* gspread (>=3.0.0; to use older versions of gspread, use gspread-dataframe releases of 2.1.1 or earlier)
* Pandas >= 0.24.0

From PyPI
~~~~~~~~~

.. code:: sh

    pip install gspread-dataframe

From GitHub
~~~~~~~~~~~

.. code:: sh

    git clone https://github.com/robin900/gspread-dataframe.git
    cd gspread-dataframe
    python setup.py install



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/robin900/gspread-dataframe",
    "name": "gspread-dataframe",
    "maintainer": "",
    "docs_url": "https://pythonhosted.org/gspread-dataframe/",
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "spreadsheets,google-spreadsheets,pandas,dataframe",
    "author": "Robin Thomas",
    "author_email": "rthomas900@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/fe/9f/55e08adff54b5ba477f266dd299027ad41b9e1793380d02c9302973fd7d2/gspread-dataframe-3.3.1.tar.gz",
    "platform": null,
    "description": "gspread-dataframe\n-----------------\n\n.. image:: https://badge.fury.io/py/gspread-dataframe.svg\n    :target: https://badge.fury.io/py/gspread-dataframe\n\n.. image:: https://travis-ci.com/robin900/gspread-dataframe.svg?branch=master\n    :target: https://travis-ci.com/robin900/gspread-dataframe\n\n.. image:: https://img.shields.io/pypi/dm/gspread-dataframe.svg\n    :target: https://pypi.org/project/gspread-dataframe\n\n.. image:: https://readthedocs.org/projects/gspread-dataframe/badge/?version=latest\n    :target: https://gspread-dataframe.readthedocs.io/en/latest/?badge=latest\n    :alt: Documentation Status\n\nThis package allows easy data flow between a worksheet in a Google spreadsheet\nand a Pandas DataFrame. Any worksheet you can obtain using the ``gspread`` package\ncan be retrieved as a DataFrame with ``get_as_dataframe``; DataFrame objects can\nbe written to a worksheet using ``set_with_dataframe``:\n\n.. code:: python\n\n    import pandas as pd\n    from gspread_dataframe import get_as_dataframe, set_with_dataframe\n\n    worksheet = some_worksheet_obtained_from_gspread_client\n\n    df = pd.DataFrame.from_records([{'a': i, 'b': i * 2} for i in range(100)])\n    set_with_dataframe(worksheet, df)\n\n    df2 = get_as_dataframe(worksheet)\n\nThe ``get_as_dataframe`` function supports the keyword arguments\nthat are supported by your Pandas version's text parsing readers,\nsuch as ``pandas.read_csv``. Consult `your Pandas documentation for a full list of options <https://pandas.pydata.org/docs/reference/api/pandas.read_csv.html>`__. Since the ``'python'`` engine in Pandas is used for parsing,\nonly options supported by that engine are acceptable:\n\n.. code:: python\n\n    import pandas as pd\n    from gspread_dataframe import get_as_dataframe\n\n    worksheet = some_worksheet_obtained_from_gspread_client\n\n    df = get_as_dataframe(worksheet, parse_dates=True, usecols=[0,2], skiprows=1, header=None)\n\nFormatting Google worksheets for DataFrames\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nIf you install the ``gspread-formatting`` package, you can additionally format a Google worksheet to suit the  \nDataFrame data you've just written. See the `package documentation for details <https://github.com/robin900/gspread-formatting#formatting-a-worksheet-using-a-pandas-dataframe>`__, but here's a short example using the default formatter:\n\n.. code:: python\n\n    import pandas as pd\n    from gspread_dataframe import get_as_dataframe, set_with_dataframe\n    from gspread_formatting.dataframe import format_with_dataframe\n\n    worksheet = some_worksheet_obtained_from_gspread_client\n\n    df = pd.DataFrame.from_records([{'a': i, 'b': i * 2} for i in range(100)])\n    set_with_dataframe(worksheet, df)\n    format_with_dataframe(worksheet, df, include_column_header=True)\n\n\nInstallation\n------------\n\nRequirements\n~~~~~~~~~~~~\n\n* Python 2.7, 3+\n* gspread (>=3.0.0; to use older versions of gspread, use gspread-dataframe releases of 2.1.1 or earlier)\n* Pandas >= 0.24.0\n\nFrom PyPI\n~~~~~~~~~\n\n.. code:: sh\n\n    pip install gspread-dataframe\n\nFrom GitHub\n~~~~~~~~~~~\n\n.. code:: sh\n\n    git clone https://github.com/robin900/gspread-dataframe.git\n    cd gspread-dataframe\n    python setup.py install\n\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Read/write gspread worksheets using pandas DataFrames",
    "version": "3.3.1",
    "project_urls": {
        "Homepage": "https://github.com/robin900/gspread-dataframe"
    },
    "split_keywords": [
        "spreadsheets",
        "google-spreadsheets",
        "pandas",
        "dataframe"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4fcdb5ad4a14a6be7a188197cf103e6f3282c437b1978b55a9e7de041ea2d125",
                "md5": "c4ed02fe3583e6e25ca6cf863157fe32",
                "sha256": "0a1616f3be82005b0d1099f86210df6b47814c1250d17e97ea7bcce7a456f4f0"
            },
            "downloads": -1,
            "filename": "gspread_dataframe-3.3.1-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c4ed02fe3583e6e25ca6cf863157fe32",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": null,
            "size": 7954,
            "upload_time": "2023-06-16T18:35:14",
            "upload_time_iso_8601": "2023-06-16T18:35:14.179536Z",
            "url": "https://files.pythonhosted.org/packages/4f/cd/b5ad4a14a6be7a188197cf103e6f3282c437b1978b55a9e7de041ea2d125/gspread_dataframe-3.3.1-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fe9f55e08adff54b5ba477f266dd299027ad41b9e1793380d02c9302973fd7d2",
                "md5": "a23c16ae27e7282b052709bd3ba79e97",
                "sha256": "2f8435be07c03b5a92c48ba1dd7aee14f23ada1660da8338219459a92652312e"
            },
            "downloads": -1,
            "filename": "gspread-dataframe-3.3.1.tar.gz",
            "has_sig": false,
            "md5_digest": "a23c16ae27e7282b052709bd3ba79e97",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 28263,
            "upload_time": "2023-06-16T18:35:15",
            "upload_time_iso_8601": "2023-06-16T18:35:15.922494Z",
            "url": "https://files.pythonhosted.org/packages/fe/9f/55e08adff54b5ba477f266dd299027ad41b9e1793380d02c9302973fd7d2/gspread-dataframe-3.3.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-06-16 18:35:15",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "robin900",
    "github_project": "gspread-dataframe",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": false,
    "lcname": "gspread-dataframe"
}
        
Elapsed time: 0.20465s