---
description: Get value from input dataset
---

# input

The simplest method to take a column from CSV is this:

{% tabs %}
{% tab title="date.yaml" %}
```yaml
version: 1
columns:
  date: "Transaction Date"
```
{% endtab %}

{% tab title="input.csv" %}
```
Transaction Date
06/05/2020
```
{% endtab %}

{% tab title="output.csv" %}
```
date
06/05/2020
```
{% endtab %}
{% endtabs %}

This is not extensible however: you cannot add more transformations beneath that string. More flexible, and recommended, is this:

```yaml
version: 1
columns:
  date:
    - input: "Transaction Date"
    # you can add more transformations down here :)
```

But sometimes you might have a number of slightly different CSV datasets where the same column is named differently. `ysv` supports that:

```yaml
version: 1
columns:
  date:
    - input:
      - "Transaction Date"
      - "Event Date"
      - "Date"
    # you can add more transformations down here :)
```

`ysv` will search for each of the names you specified in the headers of the input dataset. The first header found is going to be used.

Regardless of the form of `input` transformation, - if no headers match, the column will be empty.
