readCsv
The readCsv
method will read a CSV file into an in-memory table.
Syntax
import io.deephaven.csv.CsvTools
readCsv(path)
readCsv(stream)
readCsv(url)
readCsv(path, specs)
readCsv(stream, specs)
readCsv(url, specs)
Parameters
Parameter | Type | Description |
---|---|---|
path | String | The file to load into a table. |
path | Path | The file to load into a table. Note that compressed files are accepted: paths ending in ".tar.zip", ".tar.bz2", ".tar.gz", ".tar.7z", ".tar.zst", ".zip", ".bz2", ".gz", ".7z", ".zst", or ".tar" will automatically be decompressed before they are read. |
stream | InputStream | An InputStream providing access to the CSV data. |
url | URL | The URL. |
specs | io.deephaven.csv.CsvSpecs | Specifications for how to load the CSV file. |
Only one format parameter can be used at a time.
Returns
A new in-memory table from a CSV file.
Examples
In this guide, we read data from locations relative to the base of the Docker container. See Docker data volumes to learn more about the relation between locations in the container and the local file system.
In the following example, write_csv
writes the source table to /data/file.csv
, and read_csv
loads the file into a Deephaven table.
import static io.deephaven.csv.CsvTools.readCsv
import static io.deephaven.csv.CsvTools.writeCsv
source = newTable(
stringCol("X", "A", "B", null, "C", "B", "A", "B", "B", "C"),
intCol("Y",2, 4, 2, 1, 2, 3, 4, NULL_INT, 3),
intCol("Z", 55, 76, 20, NULL_INT, 230, 50, 73, 137, 214),
)
writeCsv(source, "/data/file.csv")
result = readCsv("/data/file.csv")
- source
- result
In the following examples, the example data found in Deephaven's example repository will be used. Follow the instructions in the README to download the data to the proper location for use with Deephaven.
In the following example, read_csv
is used to load the file DeNiro CSV into a Deephaven table.
import static io.deephaven.csv.CsvTools.readCsv
result = readCsv("https://media.githubusercontent.com/media/deephaven/examples/main/DeNiro/csv/deniro.csv")
- result
In the following example, read_csv
is used to load the file DeNiro TSV into a Deephaven table. The second argument, "\t"
, indicates that the file contains tab-separated values.
import static io.deephaven.csv.CsvTools.readCsv
import io.deephaven.csv.CsvSpecs
specs = CsvSpecs.tsv()
deniroTSV = readCsv("https://raw.githubusercontent.com/deephaven/examples/main/DeNiro/csv/deniro.tsv", specs)
- deniroTSV
Any character can be used as a delimiter. The pipe character (|
) is common. In the following example, the second input parameter is used to read a pipe-delimited file into memory.
import static io.deephaven.csv.CsvTools.readCsv
import io.deephaven.csv.CsvSpecs
specs = CsvSpecs.builder().delimiter('|' as char).build()
result = readCsv("https://raw.githubusercontent.com/deephaven/examples/main/DeNiro/csv/deniro.psv", specs)
- result