---
metadata:
  - name: generator
    content: Diplodoc Platform v5.52.0
alternate:
  - https://catboost.ai/docs/en/concepts/input-data_column-descfile.md
  - href: en/concepts/input-data_column-descfile.md
    type: text/markdown
    title: Markdown version
  - href: ../llms.txt
    type: text/markdown
    title: llms.txt
---
> **Documentation Index:** Fetch the complete configuration index at https://catboost.ai/docs/en/llms.txt

# Columns description


## Contains

<!-- source: en/_includes/work_src/reusage-input-data/contains__full.md -->
A description of the data types contained in the columns of the [Dataset in delimiter-separated values format](https://catboost.ai/docs/en/concepts/input-data_values-file.md) or the [Dataset in extended libsvm format](https://catboost.ai/docs/en/concepts/input-data_libsvm.md).
<!-- endsource: en/_includes/work_src/reusage-input-data/contains__full.md -->

{% note info %}

The columns description file is optional. If omitted, it is assumed that the first column in the file with the dataset description defines the label value, and the other columns are the values of numerical features.

{% endnote %}

### Supported column types

* [Label](#label)
* [Num](#num)
* [Categ](#categ)
* [Text](#text)
* [NumVector](#numvector)
* [Auxiliary](#auxiliary)
* [SampleId](#sampleId)
* [Weight](#weight)
* [GroupWeight](#groupWeight)
* [Baseline](#baseline)
* [GroupId](#groupId)
* [SubgroupId](#subgroupId)
* [Timestamp](#timestamp)
* [Position](#position)

<!-- source: en/_includes/work_src/reusage-input-data/table-descriptions__full.md -->
#### Label

<!-- source: en/_includes/work_src/reusage-input-data/label__shortdesc.md -->
The target variable (in other words, the object's label value).
<!-- endsource: en/_includes/work_src/reusage-input-data/label__shortdesc.md -->

The type of data depends on the machine learning task being solved:
- Regression, multiregression and ranking — Numeric values.
- Binary classification
    One of:

    - Integers or strings that represent the labels of the classes (only two unique values).
    - Numeric values.
        The interpretation of numeric values depends on the selected loss function:

        - Logloss — The value is considered a positive class if it is strictly greater than the value of the `target_border` training parameter. Otherwise, it is considered a negative class.
        - CrossEntropy — The value is interpreted as the probability that the dataset object belongs to the positive class. Possible values are in the range `[0; 1]`.

- Multiclassification — Integers or strings that represents the labels of the classes.

#### Num

A numerical feature.

<!-- source: en/_includes/work_src/reusage-input-data/a-tab-delimited-feature-id-can-be-set.md -->
A tab-delimited feature ID can be added for this type of column. The specified value replaces the feature ID in the following output files:
- [Feature importance](https://catboost.ai/docs/en/concepts/output-data_feature-analysis_feature-importance.md)
- [Feature interaction strength](https://catboost.ai/docs/en/concepts/output-data_feature-analysis_feature-interaction-strength.md)
<!-- endsource: en/_includes/work_src/reusage-input-data/a-tab-delimited-feature-id-can-be-set.md -->

#### Categ

A categorical feature.

<!-- source: en/_includes/work_src/reusage-input-data/a-tab-delimited-feature-id-can-be-set.md -->
A tab-delimited feature ID can be added for this type of column. The specified value replaces the feature ID in the following output files:
- [Feature importance](https://catboost.ai/docs/en/concepts/output-data_feature-analysis_feature-importance.md)
- [Feature interaction strength](https://catboost.ai/docs/en/concepts/output-data_feature-analysis_feature-interaction-strength.md)
<!-- endsource: en/_includes/work_src/reusage-input-data/a-tab-delimited-feature-id-can-be-set.md -->

#### Text

A text feature.

#### NumVector

An array of numbers that represent an embedding feature. Numbers in the string are separated by a single character separator. Its default value is `;`.

#### Auxiliary

Any data.

A tab-delimited Auxiliary column ID can be added for this type of column. The specified value can be used in the `--output-columns` command-line [applying](https://catboost.ai/docs/en/concepts/cli-reference_calc-model.md) parameter.

The value of this column is ignored (the behavior is the same as when this column is omitted in the file with the [dataset](https://catboost.ai/docs/en/concepts/input-data_values-file.md)).


#### SampleId

_Alias:_`DocId`

<!-- source: en/_includes/work_src/reusage-input-data/docid__shortdesc.md -->
An alphanumeric ID of the object.
<!-- endsource: en/_includes/work_src/reusage-input-data/docid__shortdesc.md -->


#### Weight

<!-- source: en/_includes/work_src/reusage-input-data/weight__shortdesc.md -->
The object's weight.
<!-- endsource: en/_includes/work_src/reusage-input-data/weight__shortdesc.md -->

<!-- source: en/_includes/work_src/reusage-input-data/weight__desc.md -->
Used as an additional coefficient in the [objective functions and metrics](https://catboost.ai/docs/en/concepts/loss-functions.md). By default, it is set to 1 for all objects.
<!-- endsource: en/_includes/work_src/reusage-input-data/weight__desc.md -->

{% note info %}

Do not use this column type if the `GroupWeight` column is defined in the dataset description.

{% endnote %}

#### GroupWeight

<!-- source: en/_includes/work_src/reusage-input-data/weight__short_desc.md -->
The group weight.
<!-- endsource: en/_includes/work_src/reusage-input-data/weight__short_desc.md -->

Used as an additional coefficient in the [objective functions and metrics](https://catboost.ai/docs/en/concepts/loss-functions.md). By default, it is set to 1 for all objects in the group.

{% note info %}

- The weight must be the same for all objects in one group.
- Do not use this column type if the `Weight` column is defined in the dataset description.

{% endnote %}

#### Baseline

<!-- source: en/_includes/work_src/reusage-input-data/baseline__shortdesc.md -->
The initial formula values for all input objects.
<!-- endsource: en/_includes/work_src/reusage-input-data/baseline__shortdesc.md -->

Used for calculating the final values of trees.

The required number of these columns depends on the machine learning mode:
- For classification and regression – one column.
- For multiclassification – the same as the number of classes.


#### GroupId

_Alias:_`QueryId`

<!-- source: en/_includes/work_src/reusage-common-phrases/object-id__full.md -->
The identifier of the object's group. An arbitrary string, possibly representing an integer.
<!-- endsource: en/_includes/work_src/reusage-common-phrases/object-id__full.md -->

<!-- source: en/_includes/work_src/reusage/group-id__desc__group-by-group-id__obligatory__note.md -->
{% note warning %}

All objects in the dataset must be grouped by group identifiers if they are present. I.e., the objects with the same group identifier should follow each other in the dataset.

{% cut "Example" %}

For example, let's assume that the dataset consists of documents $d_{1}, d_{2}, d_{3}, d_{4}, d_{5}$. The corresponding groups are $g_{1}, g_{2}, g_{3}, g_{2}, g_{2}$, respectively. The feature vectors for the given documents are $f_{1}, f_{2}, f_{3}, f_{4}, f_{5}$ respectively. Then the dataset can take the following form:

$\begin{pmatrix} d_{2}&g_{2}&f_{2}\\ d_{4}&g_{2}&f_{4}\\ d_{5}&g_{2}&f_{5}\\ d_{3}&g_{3}&f_{3}\\ d_{1}&g_{1}&f_{1} \end{pmatrix}$

The grouped blocks of lines can be input in any order. For example, the following order is equivalent to the previous one:

$\begin{pmatrix} d_{1}&g_{1}&f_{1}\\ d_{3}&g_{3}&f_{3}\\ d_{2}&g_{2}&f_{2}\\ d_{4}&g_{2}&f_{4}\\ d_{5}&g_{2}&f_{5} \end{pmatrix}$

{% endcut %}

{% endnote %}
<!-- endsource: en/_includes/work_src/reusage/group-id__desc__group-by-group-id__obligatory__note.md -->


#### SubgroupId

The identifier of the object's subgroup. Used to divide objects within a group. An arbitrary string, possibly representing an integer.


#### Timestamp

Should be a non-negative integer.

<!-- source: en/_includes/work_src/reusage-input-data/timestamp__shortdesc.md -->
The timestamp of the object.
<!-- endsource: en/_includes/work_src/reusage-input-data/timestamp__shortdesc.md -->


#### Position

Should be a non-negative integer.

The ranking position of the object. The value is used to calculate the StochasticFilter metric.
<!-- endsource: en/_includes/work_src/reusage-input-data/table-descriptions__full.md -->

## Specification

The file has a text format.

Each line describes a single column.

Adding descriptions for [Num](#num) columns that represent numerical features is optional. Any columns that aren't specified in the column description file are assumed to be [Num](#num).

## Row format

 Each line has two or three fields separated by a tab character (shown as `<\t>` below).

```
<column index (numbering starts from zero)><\t><data type><\t><feature id/name (optional, applicable for feature type columns only (Num, Categ, Text and NumVector)>
```

## Specifics

- The feature indices and the column indices usually differ.

    The table below shows the difference between these indices on the columns description example given above.

    Column index | Column data | Feature index
    ----- | ----- | -----
    0 | `Label` | —
    1 | `Num` | 0
    2 | `Num` | 1
    3 | `Categ<\t>wind direction` | 2
    4 | `Auxiliary` | —
    5 | `Num` | 3

- Multiregression labels are specified in several separate columns.


{% cut "Example" %}

    ```
    0<\t>Label
    1<\t>Label
    ```

{% endcut %}


## Example

<!-- source: en/_includes/work_src/reusage/weather-example-feature-list.md -->
An object contains information about the weather, and the features represent:
- temperature (degrees Celsius)
- wind speed (meters per second)
- wind direction (<q>south</q>, <q>west</q>, <q>north</q>, <q>east</q>)
- pressure (mmHg)
<!-- endsource: en/_includes/work_src/reusage/weather-example-feature-list.md -->


<!-- source: en/_includes/work_src/reusage/hypothesis-value.md -->
The label (target) takes binary values:
- <q>0</q> stands for the absence of precipitation
- <q>1</q> stands for the presence of precipitation
<!-- endsource: en/_includes/work_src/reusage/hypothesis-value.md -->


<!-- source: en/_includes/work_src/reusage/arbitrary-data-column.md -->
A column with arbitrary data is provided.
<!-- endsource: en/_includes/work_src/reusage/arbitrary-data-column.md -->


<!-- source: en/_includes/work_src/reusage/feature-wind-direction.md -->
The feature representing the wind direction should be renamed to <q>wind direction</q> in the output files with information on the [feature strength](https://catboost.ai/docs/en/concepts/fstr.md).
<!-- endsource: en/_includes/work_src/reusage/feature-wind-direction.md -->


<!-- source: en/_includes/work_src/reusage/file-with-column-descs.md -->
The file with the [columns description](https://catboost.ai/docs/en/concepts/input-data_column-descfile.md) with tab-separated data looks like this:
```
0<\t>Label
3<\t>Categ<\t>wind direction
4<\t>Auxiliary
```
<!-- endsource: en/_includes/work_src/reusage/file-with-column-descs.md -->


The following variant is equivalent to the previous but is redundant:

```
0<\t>Label<\t>
1<\t>Num
2<\t>Num
3<\t>Categ<\t>wind direction
4<\t>Auxiliary
5<\t>Num
```
