> For the complete documentation index, see [llms.txt](https://mikefarah.gitbook.io/yq/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mikefarah.gitbook.io/yq/operators/to_number.md).

# To Number

Parses the input as a number. yq will try to parse values as an int first, failing that it will try float. Values that already ints or floats will be left alone.

## Converts strings to numbers

Given a sample.yml file of:

```yaml
- "3"
- "3.1"
- "-1e3"
```

then

```bash
yq '.[] | to_number' sample.yml
```

will output

```yaml
3
3.1
-1e3
```

## Doesn't change numbers

Given a sample.yml file of:

```yaml
- 3
- 3.1
- -1e3
```

then

```bash
yq '.[] | to_number' sample.yml
```

will output

```yaml
3
3.1
-1e3
```

## Cannot convert null

Running

```bash
yq --null-input '.a.b | to_number'
```

will output

```bash
Error: cannot convert node value [null] at path a.b of tag !!null to number
```
