Setting data types in CSV
Using data type prefixes in CSV, you can set data types for fields in your data source.
Available data types
The following data types are available in CSV:
Some of these types can be auto-resolved by the component.
Automatic type resolution
If you omit the data type prefix, the component automatically assigns the data type based on the field’s first value. The following data types can be auto-resolved:
The results of the automatic resolution may be unexpected when:
- The first field value is blank or not specified.
- The field values are not formatted correctly. For example, a date was specified in a format different from the ISO 8601.
- The field type cannot be resolved automatically. For example, time values are processed as numbers if the
t+
prefix is not explicitly specified. - The first field value is formatted differently from other values. For example, the first value is a number while others are strings.
Learn more about each field data type in the sections below.
Number
This field type is used to store numbers.
Field values can contain digits, -
, and +
characters. Point .
must be used as a decimal separator. Numbers in exponential notation are also supported. Examples of valid values: -20
, 2.50
, 1.0E+2
.
To mark the field as a number, add the -
data type prefix to the field name.
Can be auto-resolved: yes (learn more).
Available aggregations: all.
String
This field type is used to store strings.
If a field value contains line breaks or a field separator, it must be enclosed in double quotes "
. A double quote inside such values must be escaped using another double quote. Examples of valid values: Apple
, "A-Z" section, "1, 2, 3"
, "The ""A, B, C"" magazine"
.
To mark the field as a string, add the +
data type prefix to the field name.
Can be auto-resolved: yes (learn more).
Available aggregations: Count
, Distinct Count
.
Date
This field type is used to store dates.
Field values must be specified in the ISO 8601 format. Examples: 2018-01-10
(date), 2018-01-10T08:14:00
(date and time), 2018-01-10T06:14:00Z
(date and time in UTC).
To mark the field as a date, add one of the following data type prefixes to the field name:
d+
– dates are divided into 3 subfields:Year
,Month
,Day
.
Can be auto-resolved: yes (learn more).
Available aggregations:Count
,Distinct Count
.ds+
– dates are displayed as strings in the"dd/MM/yyyy"
format. The format can be changed using the datePattern option.
Can be auto-resolved: no (learn more).
Available aggregations:Min
,Max
,Count
,Distinct Count
.D+
– dates are represented as the multilevel hierarchy:Year
>Month
>Day
.
Can be auto-resolved: no (learn more).
Available aggregations:Count
,Distinct Count
.
See the example.D4+
– dates are represented as the multilevel hierarchy:Year
>Quarter
>Month
>Day
.
Can be auto-resolved: no (learn more).
Available aggregations:Count
,Distinct Count
.
See the example.dt+
– dates are displayed as strings in the"dd/MM/yyyy HH:mm:ss"
format. The format can be changed using the dateTimePattern option.
Can be auto-resolved: no (learn more).
Available aggregations:Min
,Max
,Count
,Distinct Count
.
Here is an example of CSV data with the Invoice date
date (dt+
) field:
dt+Invoice Date, Price, Country 2018-05-15T18:30:00, 329, France 2018-05-16T06:20:00, 139, Italy 2018-05-17T13:45:00, 429, Spain 2018-05-12T04:50:00, 559, Japan
Time
This field type is used to store time intervals, such as duration.
Field values must be specified as a number of seconds. In the component, values are displayed in the "HH:mm:ss"
format. Examples of valid values: 5400
(displayed as "01:30:00"
in the component).
To mark the field as time, add the t+
data type prefix to the field name.
Can be auto-resolved: no (learn more).
Available aggregations: Min
, Max
, Count
, Distinct Count
.
Here is an example of CSV data with the Duration
time field:
t+Duration, Movie, ReleaseYears 7020, Blade Runner, 1980-1990 5220, The Lion King, 1990-2000 7560, Jurassic Park, 1990-2000 9120, The Dark Knight, 2000-2010
Month
This field type is used to store months. Natural sorting is applied to the field members: from January to December.
Field values must start with a capital letter. Full names and three-letter abbreviations of months are supported. Examples of valid values: October
, Dec
, May
.
To mark the field as months, add the m+
data type prefix to the field name.
Can be auto-resolved: no (learn more).
Available aggregations: Count
, Distinct Count
.
Weekday
This field type is used to store the days of the week. Natural sorting is applied to the field members: from Sunday to Monday.
Field values must start with a capital letter. Full names and three-letter abbreviations of the days of the week are supported. Examples of valid values: Monday
, Sun
, Friday
.
To mark the field as a day of the week, add the w+
data type prefix to the field name.
Can be auto-resolved: no (learn more).
Available aggregations: Count
, Distinct Count
.