# Num Función de script y de gráfico

Num() da formato a un número, es decir, convierte el valor numérico de la entrada para mostrar texto en vez, utilizando el formato especificado en el segundo parámetro. Si se omite el segundo parámetro, utiliza los separadores de decimal y de miles definidos en el script de carga de datos. Los símbolos de separador decimal o de miles personalizados son parámetros opcionales.

Sintaxis:

Num(number[, format[, dec\_sep [, thou\_sep]]])

Tipo de datos que devuelve: dual

La función Num devuelve un valor dual con la cadena y el valor numérico. La función toma el valor numérico de la expresión introducida y genera una cadena que representa el número.

Argumentos

| Argumento | Descripción |
| --- | --- |
| number | La cadena de texto que se ha de evaluar. |
| format | Cadena que describe qué formato habrá de tener la cadena resultante. Si se omite el segundo parámetro, utiliza los separadores de decimal y de miles definidos en el script de carga de datos.<br><br>La función `Num` admite muchas opciones de formato para diferentes estructuras numéricas, por ejemplo:<br><br>`#,##0`: muestra un número sin decimales.<br><br>`#,##0.00`: muestra un número con dos decimales.<br><br>`##0.00%`: muestra un número como porcentaje con dos decimales.<br><br>`​#,##0;(#,##0)`: da formato a los números negativos para que aparezcan entre paréntesis.<br><br>`$#,##0.00`: da formato los números como moneda con el símbolo $.<br><br>`​0.00E+0`: da formato a los números en notación científica. |
| dec\_sep | Cadena que especifica el separador numérico decimal. Si se omite, se utilizará el valor de la variable DecimalSep establecido en el script de carga de datos.<br><br>La función `Num` admite muchos formatos de separador decimal de números, por ejemplo:<br><br>Signo de coma "`,`": por ejemplo, `$1,000,00` para mil dólares.<br><br>Signo de punto "`.`"': por ejemplo, `€ 1,000.00`.<br><br>Signo de guión "`-`": cuando se utiliza en lugar del punto o la coma tradicionales como separador decimal, muestra valores como `¥1,000-00`.<br><br>Para más información, consulte [DecimalSep](https://help.qlik.com/es-ES/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/DecimalSep.htm). |
| thou\_sep | Cadena que especifica el separador numérico de miles. Si se omite, se utilizará el valor de la variable ThousandSep establecido en el script de carga de datos.<br><br>La función `Num` admite muchas opciones para el separador de miles:<br><br>Signo de punto "`.`": utiliza un punto como separador de miles (común en algunos formatos europeos), mostrándose como `$1.000,00` si se combina con un separador decimal de coma.<br><br>Un espacio ​" ": utiliza un espacio como separador de miles, algo que es habitual en algunos países europeos. Se mostraría así: `€ 1 000.00`.<br><br>Signo de guión bajo "`_`": utiliza un guión bajo como separador de miles, que a veces se utiliza en formatos técnicos o regionales específicos. Muestra valores como `$1_000.00`.<br><br>Para más información, consulte [ThousandSep](https://help.qlik.com/es-ES/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/ThousandSep.htm). |

Para obtener más información sobre el formato de números, vea [Convenciones para formatos de número y tiempo](https://help.qlik.com/es-ES/cloud-services/Subsystems/Hub/Content/Sense_Hub/Introduction/conventions-number-time-formats.htm).

Ejemplo: Expresiones de gráficos

| Ejemplo | Resultados (valor de cadena que devuelve) |
| --- | --- |
| `Num(35648.312)` | Devuelve `35648.312` (depende de las variables de entorno del script) |
| `Num(35648.312, '0.0', '.')` | Devuelve `35648.3` |
| `Num(35648.312, '0,00', ',')` | Devuelve `3,56,48` |
| `Num(35648.312, '#,##0.0', '.', ',')` | Devuelve `35,648.3` |
| `Num(35648.312, '# ##0', ',', ' ')` | Devuelve `35 648` |

## Ejemplo: fundamentos de Num

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/FormattingFunctions/Num.htm)

#### Expresión de gráfico

Vista general

Abra el Editor de carga de datos y añada el script de carga inferior en una nueva sección.

El script de carga contiene:

* Un conjunto de datos que se carga en una tabla de datos denominada `Example`.

* El siguiente campo en una tabla de datos:

  * `InputValue`

Script de carga

```
Example:
Load * inline [
InputValue
35648
3564800
356.48
];
```

Resultados

Cargue los datos y abra una hoja. Cree una nueva tabla y agregue este campo como dimensión:

* ` InputValue
                                       `

Cree las siguientes medidas:

* `=Num(InputDate)`, para ver el valor como un número que recibe formato utilizando los ajustes del sistema.

* `=Num(InputValue, '0.0', '.')`, para ver el valor como un número que recibe formato utilizando el formato suministrado en la función.

* `=Num(InputValue, '0,00', ',')`, para ver el valor como un número que recibe formato utilizando el formato suministrado en la función.

* `=Num(InputValue, '#,##0.0', '.', ',')`, para ver el valor como un número que recibe formato utilizando el formato suministrado en la función.

* `=Num(InputValue, '# ##0', ',', ' ')`, para ver el valor como un número que recibe formato utilizando el formato suministrado en la función.

Results table

| InputValue | Num(InputDate) | Num(InputValue, '0.0', '.') | Num(InputValue, '0,00', ',') | Num(InputValue, '#,##0.0', '.', ',') | Num(InputValue, '# ##0', ',', ' ') |
| --- | --- | --- | --- | --- | --- |
| 356.48 | 356.48 | 356.5 | 3,56 | 356.5 | 356 |
| 35648 | 35648 | 35648.0 | 3,56,48 | 35,648.0 | 35 648 |
| 3564800 | 3564800 | 3564800.0 | 3,56,48,00 | 3,564,800.0 | 3 564 800 |

Los resultados muestran cómo la función `Num` puede mostrar los valores del campo `InputValue` basándose en el formato suministrado en la expresión de la función.

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/FormattingFunctions/Num.htm)

#### Script de carga

La función `Num` puede utilizarse en un script de carga para dar formato a un número, incluso si los separadores decimal y de miles ya están configurados en el script. El script de carga siguiente incluye separadores de miles y decimales específicos, pero luego usa `Num` para dar formato a los datos de diferentes maneras.

Script de carga

En la página Editor de carga de datos, cree una nueva sección y después añada el script de ejemplo y ejecútelo. A continuación, añada, al menos, los campos que figuran en la tabla de resultados a una hoja de su aplicación para ver el resultado.

```
SET ThousandSep=',';
SET DecimalSep='.';
Transactions:
Load
*,
Num(transaction_amount) as [No formatting],
Num(transaction_amount,'0') as [0],
Num(transaction_amount,'#,##0') as [#,##0],
Num(transaction_amount,'# ###,00') as [# ###,00],
Num(transaction_amount,'# ###,00',',',' ') as [# ###,00 , ',' , ' '],
Num(transaction_amount,'#,###.00','.',',') as [#,###.00 , '.' , ','],
Num(transaction_amount,'$#,###.00') as [$#,###.00],
;
Load * Inline [
transaction_id, transaction_date, transaction_amount, transaction_quantity, discount, customer_id, size, color_code
3750, 20180830, 12423.56, 23, 0,2038593, L, Red
3751, 20180907, 5356.31, 6, 0.1, 203521, m, orange
3752, 20180916, 15.75, 1, 0.22, 5646471, S, blue
3753, 20180922, 1251, 7, 0, 3036491, l, Black
3754, 20180922, 21484.21, 1356, 75, 049681, xs, Red
3756, 20180922, -59.18, 2, 0.333333333333333, 2038593, M, Blue
3757, 20180923, 3177.4, 21, .14, 203521, XL, Black
];
```

Resultados

Tabla de Qlik SenseQlik Sense que muestra los resultados de la función NumNum en el script de carga. La cuarta columna de la tabla contiene un formato incorrecto a efectos de ejemplo.

| No formatting | 0 | #,##0 | # ###,00 | # ###,00 , ',' , ' ' | #,###.00 , '.' , ',' | $#,###.00 |
| --- | --- | --- | --- | --- | --- | --- |
| -59.18 | -59 | -59 | -59###,00 | -59,18 | -59.18 | $-59,18 |
| 15.75 | 16 | 16 | 16###,00 | 15,75 | 15.75 | $15,75 |
| 1251 | 1251 | 1,251 | 1251###,00 | 1 251,00 | 1,251.00 | $1,251.00 |
| 3177.4 | 3177 | 3,177 | 3177###,00 | 3 177,40 | 3,177.40 | $3,177.40 |
| 5356.31 | 5356 | 5,356 | 5356###,00 | 5 356,31 | 5,356.31 | $5,356.31 |
| 12423.56 | 12424 | 12,424 | 12424###,00 | 12 423,56 | 12,423.56 | $12,423.56 |
| 21484.21 | 21484 | 21,484 | 21484###,00 | 21 484,21 | 21,484.21 | $21,484.21 |

## Ejemplo: uso de Num

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/FormattingFunctions/Num.htm)

#### Expresión de gráfico

Vista general

Un conjunto de datos contiene datos de ventas que desea presentar utilizando un formato numérico más sencillo.

Abra el Editor de carga de datos y añada el script de carga inferior en una nueva sección.

El script de carga contiene:

* Un conjunto de datos que se carga en una tabla de datos denominada `Example`.

* Los siguientes campos de la tabla de datos:

  * `Customer`
  * `Sales`

Script de carga

```
Example:
Load * inline [
Customer, Sales
Customer A, 2550000
Customer B, 12500
Customer C, 15000
Customer D, 250
];
```

Resultados

Cargue los datos y abra una hoja. Cree una nueva tabla y agregue este campo como dimensión:

* ` Customer
                                       `

Cree la siguiente medida:

* `=If(Sales > 1000000, Num(Sales/1000000, '#,##0.00M'), If(Sales > 1000, Num(Sales/1000, '#,##0.00K'), Num(Sales, '#,##0.00')))`, para establecer la representación numérica de los valores.

Results table

| Customer | If(Sales &gt; 1000000, Num(Sales/1000000, '#,##0.00M'), If(Sales &gt; 1000, Num(Sales/1000, '#,##0.00K'), Num(Sales, '#,##0.00'))) |
| --- | --- |
| Customer A | 2.55M |
| Customer B | 12.50K |
| Customer C | 15.00K |
| Customer D | 250.00 |

La expresión de medida de la columna 2 utiliza la función `Num` para presentar los datos en un formato numérico simplificado.

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/FormattingFunctions/Num.htm)

#### Script de carga

La función `Num` puede utilizarse en un script de carga para dar formato a un número como porcentaje.

Script de carga

En el Editor de carga de datos, cree una nueva sección y luego agregue el script de ejemplo y ejecútelo. A continuación, agregue los campos enumerados en la columna de resultados a una hoja de su aplicación para ver el resultado.

```
SET ThousandSep=',';
SET DecimalSep='.';
Transactions:
Load
*,
Num(discount,'#,##0%') as [Discount #,##0%]
;
Load * Inline [
transaction_id, transaction_date, transaction_amount, transaction_quantity, discount, customer_id, size, color_code
3750, 20180830, 12423.56, 23, 0,2038593, L, Red
3751, 20180907, 5356.31, 6, 0.1, 203521, m, orange
3752, 20180916, 15.75, 1, 0.22, 5646471, S, blue
3753, 20180922, 1251, 7, 0, 3036491, l, Black
3754, 20180922, 21484.21, 1356, 75, 049681, xs, Red
3756, 20180922, -59.18, 2, 0.333333333333333, 2038593, M, Blue
3757, 20180923, 3177.4, 21, .14, 203521, XL, Black
];
```

Tabla de Qlik SenseQlik Sense que muestra los resultados de la función `Num`Num utilizada en el script de carga para dar formato de porcentajes.

| Discount | Discount #,##0% |
| --- | --- |
| 0 | 0% |
| 0.1 | 10% |
| 0.22 | 22% |
| 0 | 0% |
| 75 | 7,500% |
| 0.333333333333333 | 33% |
| .14 | 14% |