nested_dask.datasets.generation
===============================

.. py:module:: nested_dask.datasets.generation


Functions
---------

.. autoapisummary::

   nested_dask.datasets.generation.generate_data
   nested_dask.datasets.generation.generate_parquet_file


Module Contents
---------------

.. py:function:: generate_data(n_base, n_layer, npartitions=1, seed=None) -> nested_dask.NestedFrame

   Generates a toy dataset.

   Docstring copied from nested-pandas.

   :param n_base: The number of rows to generate for the base layer
   :type n_base: int
   :param n_layer: The number of rows per n_base row to generate for a nested layer.
                   Alternatively, a dictionary of layer label, layer_size pairs may be
                   specified to created multiple nested columns with custom sizing.
   :type n_layer: int, or dict
   :param npartitions: The number of partitions to split the data into.
   :type npartitions: int
   :param seed: A seed to use for random generation of data
   :type seed: int

   :returns: The constructed Dask NestedFrame.
   :rtype: NestedFrame

   .. rubric:: Examples

   >>> import nested_dask as nd
   >>> nd.datasets.generate_data(10,100)
   >>> nd.datasets.generate_data(10, {"nested_a": 100, "nested_b": 200})


.. py:function:: generate_parquet_file(n_base, n_layer, path, file_per_layer=True, npartitions=1, seed=None)

   Generates a toy dataset and outputs it to one or more parquet files.

   :param n_base: The number of rows to generate for the base layer
   :type n_base: int
   :param n_layer: The number of rows per n_base row to generate for a nested layer.
                   Alternatively, a dictionary of layer label, layer_size pairs may be
                   specified to created multiple nested columns with custom sizing.
   :type n_layer: int, or dict
   :param path: The path to the parquet file to write to if `file_per_layer` is `False`,
                and otherwise the path to the directory to write the parquet file for
                each layer.
   :type path: str,
   :param file_per_layer: TODO: Currently only True is supported.
                          If True, write each layer to its own parquet file. Otherwise, write
                          the generated to a single parquet file representing a nested dataset.
   :type file_per_layer: bool, default=True
   :param npartitions: The number of Dask partitions to split the generated data into for each layer.
   :type npartitions: int, default=1
   :param seed: A seed to use for random generation of data
   :type seed: int, default=None

   :rtype: None


