--- title: "system.dataset.toDataSet" description: "This function is used to 1. Convert PyDataSets to DataSets 2. Create new datasets from raw Python lists. When creating a new dataset, headers should have unique names." --- # system.dataset.toDataSet > This function is used to 1. Convert PyDataSets to DataSets 2. Create new datasets from raw Python lists. When creating a new dataset, headers should have unique names. This function is used in **Python Scripting**. ## Description This function is used to convert a PyDataset to a dataset. In addition it can also create new datasets from a raw Python list. When creating a new dataset, headers should have unique names. For more information on datasets and PyDatasets, see the [Datasets](platform/scripting/python-scripting/variables-datatypes-and-objects/datasets.md) page. ## Client Permission Restrictions This scripting function has no [Client Permission](../../../ignition-modules/vision/vision-project-properties/vision-project-properties.md#vision-permissions-properties) restrictions. ## Syntax - Convert PyDataset `system.dataset.toDataSet(dataset)` ### Parameters Type | Parameter | Description ------- | ------- | ------- PyDataset | `dataset` | A PyDataset object to convert. ### Returns **Dataset** - The newly created dataset. ### Scope Gateway, Vision Client, Perspective Session ## Syntax - Create from list `system.dataset.toDataSet(headers, data)` ### Parameters Type | Parameter | Description ------- | ------- | ------- List[String] | `headers` | The column names for the dataset to create. List[Any] | `data` | A list of rows for the new dataset. Each row must have the same length as the headers list, and each value in a column must be the same type. ### Returns **Dataset** - The newly created dataset. ### Scope Gateway, Vision Client, Perspective Session ## Code Examples ```python title="Code Snippet - Create a simple dataset" # This example create a single column dataset. header = ['myColumn'] rows = [[1], [2]] dataset = system.dataset.toDataSet(header, rows) ``` ```python title="Code Snippet - Converting Database Query Results into a Dataset" # This second example shows how this function can be used to convert from a PyDataSet # (which is what system.db.runQuery returns) to a normal DataSet, which is the data type # of a Table component's data property. pyDataSet = system.db.runQuery("SELECT * FROM example1 LIMIT 100") table = event.source.parent.getComponent("Table") normalDataSet = system.dataset.toDataSet(pyDataSet) table.data = normalDataSet ```