--- title: "system.dataset.fromCSV" description: "Converts a dataset stored in a CSV formatted string to a dataset that can be immediately assignable to a dataset property in your project." --- # system.dataset.fromCSV > Converts a dataset stored in a CSV formatted string to a dataset that can be immediately assignable to a dataset property in your project. This function is used in **Python Scripting**. ## Description Converts a dataset stored in a CSV formatted string to a dataset that can be immediately assignable to a dataset property in your project. Usually this is used in conjunction with [system.file.readFileAsString](appendix/scripting-functions/system-file/system-file-readFileAsString.md) when reading in a CSV file that was exported using [system.dataset.toCSV](appendix/scripting-functions/system-dataset/system-dataset-toCSV.md). The CSV string must be formatted in a specific way: ```python #NAMES Col 1,Col 2,Col 3 #TYPES I,str,D #ROWS,6 44,Test Row 2,1.8713151369491254 86,Test Row 3,97.4913421614675 0,Test Row 8,20.39722542161364 78,Test Row 9,34.57127071614745 20,Test Row 10,76.41114659745085 21,Test Row 13,13.880548366871926 ``` The first line must be #NAMES The second line must list the names of the columns of the dataset separated by commas The third line must be #TYPES The fourth line must list the type of each column of the dataset in order, separated by commas Integer = I String = str Double = D Date = date Long = L Short = S Float = F Boolean = B The fifth line must be #ROWS followed by a comma and then the number of rows of data (i.e. #ROWS, 6) The following lines will be your data, each column value separated by a comma; each row on a separate line. The number of rows must match what was specified on line 5 ## Client Permission Restrictions This scripting function has no [Client Permission](projects\project-properties\project-properties.md#client---permissions) restrictions. ## Syntax `system.dataset.fromCSV(csv)` ### Parameters Type | Parameter | Description ------- | ------- | ------ String | `csv` | A string holding a CSV dataset. ### Returns **Dataset** - A new dataset. ### Scope All ## Code Examples ```python title="Example 1" # This example takes the dataset from a table component and formats the dates to look like Fri, Jan 22, 2018. data = event.source.parent.getComponent('Table').data formattedData = system.dataset.formatDates(data, "EEE, MMM d, yyyy") ``` ```python title="Example 2" # In this example it is assumed that the CSV file being read was a dataset that was previously exported using system.dataset.toCSV: # Specify file path file_path = "C:\\my_dataset.csv" # Read in the file as a string data_string = system.file.readFileAsString(file_path) # Convert the string to a dataset and store in a variable data = system.dataset.fromCSV(data_string) # Assign the dataset to a table event.source.parent.getComponent('Table').data = data ```