Campos numéricos¶
- Los campos numéricos deben codificarse exclusivamente como tipos de datos numéricos (enteros o decimales). Si no es así, determinadas operaciones con los datos, como por ejemplo una ordenación, pueden generar problemas inesperados.
-
A tener en cuenta:
- De forma general:
- No se deben usar separadores de millares. Tampoco espacios en blanco como separadores.
- El separador decimal puede ser una ‘,’ o un ‘.’, depende de la configuración regional de las aplicaciones de tratamiento de datos. En España, Francia o Alemania, entre otros países, se usa la ‘,’ y en al ámbito anglosajón el ‘.’. El uso de uno u otro carácter separador puede implicar el preprocesado de los datos para su reutilización con determinadas herramientas y lenguajes de programación.
- Los valores negativos deben ir precedidos de un signo menos (-). No usar paréntesis para indicar valores negativos.
- Si una columna contiene valores enteros y decimales, el tipo de dato debe ser decimal y por tanto, se incluirá el separador ‘,’ o ‘.’ y el número de cifras decimales que proceda, normalmente dos decimales.
- Si una columna solo contiene valores enteros, se expresarán sin separador decimal.
- No se debe mezclar texto con valores numéricos. Por ejemplo: no se debe usar 50€ o 27 km como valor en un campo numérico.
- Recomendaciones en el caso de moneda:
- Los valores numéricos deben expresarse sin decimales o con 2 decimales.
- No debe variar el número de decimales usados para dar formato a toda la columna de valores. Si varía, se vulnera la característica de consistencia de los datos.
- No incluir símbolo de moneda, ni separadores de millares (puntos o comas, según sea el caso).
- De forma general:
-
Recomendaciones en el caso de unidades de medida:
- Se deben usar los espacios decimales que sean necesarios.
- Es recomendable utilizar el diccionario de datos para expresar las unidades de medida asociadas a valores numéricos. Si se carece de diccionario, es posible indicar la unidad de medida en el nombre del campo, por ejemplo: ”distancia_metros”, siempre y cuando todos los valores de la columna tengan asociada la misma unidad de medida.
- En el caso de que la unidad de medida tenga diferentes valores para una misma columna, los valores correspondientes a cada unidad de medida den indicarse en una columna separada seguida de la columna que contiene el valor numérico.
- Por ejemplo:
marca |
precio_venta |
moneda |
chevrolet chevelle malibu |
23540,20 |
EUR |
buick skylark 320 |
22189,00 |
EUR |
plymouth satellite |
28362,65 |
USD |
amc rebel sst |
29200,00 |
USD |
-
Recomendaciones en el caso de números que indican valores codificados:
- Cuando existen ceros como números de cabecera de valores que si son significativos, deben ser tipificados como valores de texto para evitar que éstos sean truncados. Por ejemplo: Código con valor: "00000023456”.
Ejemplo 1: evitar el uso de separadores de miles. Uso de coma decimal. Consistencia en¶
Mala práctica
marca |
ingresos_ventas |
chevrolet chevelle malibu |
1.234.454,34 ? |
buick skylark 320 |
2.345.567,892 euros |
plymouth satellite |
344,678.23 |
amc rebel sst |
267.331 |
ford torino |
1.234678.67 |
Buena práctica
marca |
Ingresos_ventas |
chevrolet chevelle malibu |
1234454,34 |
buick skylark 320 |
2345567,89 |
plymouth satellite |
344678,23 |
amc rebel sst |
267331,00 |
ford torino |
1234678,67 |
En este ejemplo, la moneda que se utiliza para todos los valores del campo “ingresos_ventas” es la misma y se describirá en el diccionario de datos. En su defecto, el nombre del campo podría ser “ingresos_ventas_euros”
Ejemplo 2: usar el número de cifras decimales adecuado a cada tipo de datos numérico. Usar el signo menos (-) para valores negativos. Tipificar como texto valores con ceros significativos.¶
Mala práctica
identificador_marca |
punto_kilometrico |
latitud |
longitud |
345600 |
2.3 |
43,2345678 |
(5,1234567) |
0000345601 |
12,56 |
43,345 |
-5,2345678 |
Buena práctica
identificador_marca |
punto_kilometrico |
latitud |
longitud |
0000345600 |
2,334 |
43,2345678 |
-5,1234567 |
0000345601 |
12,567 |
43,3456789 |
-5,2345678 |
Ejemplo 3: comportamiento ante un proceso de ordenación en campos¶
- Caso 1: resultado correcto tras un proceso de ordenación cuando el campo “ranking” es de tipo “numérico”.
- Caso 2: resultado erróneo tras un proceso de ordenación cuando el campo “Ranking” es de tipo “texto”.
En este último ejemplo, se están incluyendo las comillas que abarcan a cada cadena de números con el objetivo de hacer más explicito el ejemplo, pero en una hoja de cálculo real no tienen porque ser visibles aun cuando el campo es de tipo “texto”.
Una buena práctica es comprobar en el sistema u hoja de cálculo donde se genera el archivo o por medio de una herramienta de validación como las que se detallan en el apartado “Toolbox para archivos CSV” cada tipo de datos antes de su publicación.