WOLFRAM

  • Import and Export fully support the tabular data format and provide various data conversion and formatting options.
  • Import automatically recognizes common number formats, including C and Fortran notations.
  • Numbers without decimal points are imported as integers.

Background & Context

    • Generic tabular data.
    • Stores numerical and textual information, formatted as a table.
    • Supports user-defined field and record separators, field delimiters, currency tokens, and number formats.
    • Plain text format.

Import & Export

  • Import["file.dat"] returns a list of lists containing strings and numbers representing the rows and columns stored in the file.
  • Import["file.dat",elem] imports the specified element from a Table file.
  • Import["file.dat",{elem,subelem1,}] imports subelements subelemi, useful for partial data import.
  • Import["file.dat",{{elem1,elem2,}}] imports multiple elements.
  • The import format can be specified with Import["file","Table"] or Import["file",{"Table",elem,}].
  • Export["file.dat",expr] creates a Table file from expr.
  • Supported expressions expr include:
  • {v1,v2,}a single column of data
    {{v11,v12,},{v21,v22,},}lists of rows of data
    arrayan array such as SparseArray, QuantityArray, etc.
    tseriesa TimeSeries, EventSeries or a TemporalData object
    Dataset[]a dataset
    Tabular[]a tabular object
  • See the following reference pages for full general information:
  • Import, Exportimport from or export to a file
    CloudImport, CloudExportimport from or export to a cloud object
    ImportString, ExportStringimport from or export to a string
    ImportByteArray, ExportByteArrayimport from or export to a byte array

Notebook Interface

  • Save Selection As exports the selected part of a notebook as a Table file.

Import Elements

  • General Import elements:
  • "Elements" list of elements and options available in this file
    "Summary"summary of the file
    "Rules"list of rules for all available elements
  • Data representation elements:
  • "Data"two-dimensional array, representing the rows and columns
    "Grid"table data as a Grid object
    "Tabular"table data as a Tabular object
  • Import and Export use the "Data" element by default.

Options

  • Import and Export option:
  • "TextDelimiters"Automaticstring or list of strings used to delimit non-numeric fields
  • By default, Export delimits text fields containing the field separator with double-quote characters.
  • With an explicit setting of "TextDelimiters", Export always uses the specified string tokens to delimit text fields, effectively cycling through the list of delimiters.
  • With "TextDelimiters"->{"<",">"}, Export wraps text fields in angular brackets.
  • Double-quote characters delimiting text fields are not imported by default.
  • Import options:
  • CharacterEncoding"ISOLatin1"raw character encoding used in the file
    "CurrencyTokens"{{"$", "£", "¥", "€"}, {"c", "¢", "p", "F"}}currency units to be skipped when importing numerical values
    "DateStringFormat"Nonedate format, given as a DateString specification
    "FieldSeparators"{" ","t"}string tokens taken to separate columns
    "HeaderLines"0number of lines to skip at the beginning of the file
    "IgnoreEmptyLines"Falsewhether to ignore empty lines
    "LineSeparators"{"r\n","n","\r"}string tokens taken to separate rows
    "NumberPoint""."decimal point string
    "NumberSigns"{"-","+"}strings to use for signs of negative and positive numbers
    "Numeric"Truewhether to import data fields as numbers if possible
    "RepeatedSeparators"Truewhether to parse a sequence of field separators as a single separator
  • With CharacterEncoding -> Automatic, Import attempts to infer the character encoding of the file.
  • Import converts table entries formatted as specified by the "DateStringFormat" option to a DateObject.
  • Empty lines and lines containing only whitespace characters are converted to an empty list by default. With "IgnoreEmptyLines" set to True, Import will skip empty lines.
  • With "Numeric"->False, numbers will be imported as strings in the form they appear in the file.
  • With the default setting for "LineSeparators", Import automatically recognizes all common conventions for the encoding of line-separator characters.
  • Export options:
  • AlignmentNonehow data is aligned within table columns
    CharacterEncoding"UTF8"raw character encoding used in the file
    "FieldSeparators""\t"string token used to separate columns
    "TableHeadings"Noneheadings for table columns and rows
  • Possible settings for Alignment are None, Left, Center, and Right.
  • "TableHeadings" can be set to the following values:
  • Noneno labels
    Automaticgives successive integer labels for columns and rows
    {"col1","col2",}list of column labels
    {rhead,chead}specifies separate labels for the rows and columns
  • Export encodes line separator characters using the convention of the computer system on which the Wolfram Language is being run.

Examples

open allclose all

Basic Examples  (4)Summary of the most common use cases

Import data from a Table file:

Import data as a Tabular object:

Out[1]=1

Summary of a table file:

Out[1]=1

Export an array of random numbers as a table:

Out[1]=1

Scope  (8)Survey of the scope of standard use cases

Import  (3)

Show all elements available in the file:

Out[1]=1

Import a tabular data file that uses vertical bars as field separators:

Out[1]=1

Import converts dates to a Wolfram Language DateObject specification if the date format is specified:

Out[1]=1

Export  (5)

Create a UTF-8 encoded text file that contains currency tokens:

Out[1]=1

When importing this file, currency tokens are automatically skipped:

Out[2]=2

The Wolfram Language automatically converts expressions to a list of lists when exporting to the Table format:

Out[1]=1
Out[2]=2

Table export uses the CForm for Real values:

Out[1]=1

Export an array of random numbers as a table:

Out[1]=1

Export a table formatted as a grid:

Out[1]=1

Import the generated file:

Out[2]=2

Use ExportString to create a formatted version of an array:

Out[3]=3

Import Elements  (5)

Data  (2)

Import data from a table file:

Out[3]=3

This is also the default element:

Out[4]=4

Create a text grid from data:

Out[1]=1

Grid  (1)

Import data from a table file as Grid:

Out[1]=1

Summary  (1)

Get the file summary:

Out[1]=1

Tabular  (1)

Get the data from a file as a Tabular object:

Out[1]=1

Import Options  (11)

CharacterEncoding  (1)

The character encoding can be set to any value from $CharacterEncodings:

Out[2]=2
Out[3]=3

"CurrencyTokens"  (1)

Currency tokens are automatically skipped:

Out[1]=1

Use the "CurrencyTokens"->None to include all currency tokens:

Out[3]=3

"DateStringFormat"  (1)

By default, no date conversion is happening:

Out[2]=2

Convert dates to a DateObject using the date format specified:

Out[1]=1

"FieldSeparators"  (1)

By default, " " and "t" are used as a field separators:

Out[2]=2

Use " | " as a field separator:

Out[3]=3

"HeaderLines"  (1)

Table files may include comment lines:

Out[1]=1

Specify the number of comment lines to skip:

Out[2]=2

"IgnoreEmptyLines"  (1)

Use "IgnoreEmptyLines" to remove lines with no data from the imported data:

Out[3]=3
Out[5]=5

"LineSeparators"  (1)

Use "LineSeparators" to separate rows:

Out[8]=8
Out[9]=9

"NumberPoint"  (1)

By default, "." is used to specify decimal point character for floating-point data:

Out[1]=1
Out[2]=2

Use "NumberPoint" option to specify decimal point character for floating-point data:

Out[3]=3
Out[4]=4

"NumberSigns"  (1)

By default, "-" and "+" are used for signs of negative and positive numbers:

Out[1]=1

Use "NumberSigns" option to specify signs of negative and positive numbers:

Out[2]=2

"Numeric"  (1)

By default, Import interprets numbers:

Use "Numeric"->False to import everything as strings:

"RepeatedSeparators"  (1)

By default, a sequence of field separators is parsed as a single separator:

Out[2]=2

Use "RepeatedSeparators"->False to disable that behavior:

Out[3]=3

Export Options  (4)

Alignment  (1)

By default, no additional characters are added for any alignment:

Out[1]=1

Left-align column values:

Out[2]=2

Center-align column values:

Out[3]=3

CharacterEncoding  (1)

The character encoding can be set to any value from $CharacterEncodings:

Out[2]=2
Out[3]=3

"FieldSeparators"  (1)

By default, "\t" is used to separate columns:

Out[1]=1

Use "FieldSeparators" option to specify a different separator:

Out[2]=2

"TableHeadings"  (1)

Export data using custom column headers:

Out[1]=1

Export data using custom column and row headers:

Out[2]=2

Export data using successive integer labels for columns and rows:

Out[3]=3