La preparacion de datos trata de construir un set de datos (dataset) de uno o más origenes de datos para poder tanto explorarlos como modelarlos. Como buena práctica se empieza con un dataset inicial para familiarizarse con los datos, encontrar así las primeras ideas sobre ellos y tener un buen entendimiento de cualquier posible problema de calidad de datos. La preparacion de datos suele ser a menudo un proceso que consume mucho tiempo y muy propenso al error. El viejo dicho de “entra basura, sale basura” es muy aplicable a aquellos proyectos de ciencia de datos que reunen datos con valores invalidos, fuera de rango, o simplemente inexistentes. Analizar datos que no fueron revisados cuidadosamente ante esos problemas puede producir resultados engañosos.
Es asi entonces que el éxito de un proyecto de ciencia de datos depende fuertemente de la calidad de los datos preparados.
Datos
Los datos son informacion que resulta de la medida (numerico) o cuenta (categorico). Las variables sirven como marcadores para los datos. Hay dos tipos de variables, numericas y categoricas.
Una variable (o atributo) numerica o continua o analógica es una variable que puede tomar cualquier valor dentro de un intervalo finito o infinito (ej. altura, peso, temperatura, etc). Hay dos tipos de variables numéricas, intervalo y ratio.
Una variable del tipo intervalo tiene valores cuyas diferencias son interpretables, pero que no tiene un verdadero cero. Un buen ejemplo es la temperatura en grados Centigrados. Los datos en una escala de intervalos pueden ser sumadas y restadas pero no pueden ser multiplicadas ni divididas. Por ejemplo no podemos decir que un dia es el doble de caluroso que otro. En cambio, las variables de ratio tiene valores con un cero verdadero que pueden ser sumadas, restadas, multiplicadas o divididas (ej. el peso).
Las variables categóricas o discretas son aquellas que tienen dos o más categorías (valores). Hay dos tipos de variables categóricas, nominales y ordinales, Las variables nominales no tienen un orden intrinseco en sus categorias, por ejemplo, el sexo es una variable categórica al tener dos categorías (hombre y mujer) pero estas no tienen un orden intrinseco. Una variable ordinal tiene un orden claro, por ejemplo, la temperatura como una variable con tres categorias organizadas (baja, media, alta).
Dataset
Un dataset es una coleccion de datos, a menudo presentado de manera tabular (tabla), donde cada columna representa una variable particular, y cada linea corresponde a un miembro dado de la tabla.
Hay algunas alternativas al tema de columnas, lineas y variables.
- Columnas, campos, atributos, variables
- lineas, registros, objetocs, casos, instancias, ejemplos, vectores
- valores, datos
En el modelado predictivo, las predicciones o atributos son las variables de ingreso y el target o atributo clase es la variable de salida cuyo valor se determina con los valores de los predictores y la función del modelo predictivo.
Base de Datos
Las Bases de Datos recolectan, almacenan y gestionan informacion para que los usuarios puedan accederla, sumarla, actualizarla o eliminarla. Presenta la informacion en tablas con lineas y columnas. Una tabla es referida como una relacion en el sentido de que es una coleccion de objetos del mismo tipo (lineas). Los datos en una tabla se pueden relacionar de acuerdo a conceptos o claves comunes, y la habilidad de acceder a datos relacionados a partir de tablas relacionadas es la base del término base de datos relacional. Un Sistema de Gestion de Base de Datos (DBMS) gestiona la forma en la que se almacenan, mantienen y acceden los datos. La mayoria de las herramientas de data science se conectan a las bases de datos utilizando interfaces ODBC (Open Database Conectivity) o JDBC (Java Database Conectivity).
SQL (Lenguaje de Consulta Estrcturado) es un lenguaje de bases de datos que se utiliza para gestionar y manipular los datos en un sistema de bases de datos (RDBMS)
SQL Data Definition Language (DDL) permite crear, modificar o eliminar tablas de bases de datos. Tambien se pueden definir indices, claves, especificar vinculos entre varias tablas, imponer restricciones entre tablas, etc.
- CREATE TABLE: crea una nueva tabla
- ALTER TABLE: modifica una tabla
- DROP TABLE: elimina una tabla
- CREATE INDEX: crea un indice
- DROP INDEX: elimina un indice
SQL Data Manipulation Language (DML) es un lenguaje que permite a los usuarios acceder y manipular datos.
- SELECT: obtiene datos de la base
- INSERT INTO: inserta nuevos datos en la base
- UPDATE: modifica datos existentes
- DELETE: elimina datos de la base
ETL (Extraction, Transformation and Loading)
El ETL extrae datos de uno o varios origenes de datos y lo carga en uno o varios destinos, utlizando un conjunto de funciones de transformacion.
- La Extraccion de datos provee la habilidad de extraer datos de una gran variedad de origenes de datos, tales como archivos planos, bases de datos relacionadas, datos de streaming, archivos XML, origenes de datos ODBC/JDBC, etc.
- La Transformacion de datos provee la habilidad de limpiar, convertir, sumarizar, unificar y separar datos.
- La Carga de datos provee la habilidad de cargar datos en una base de destino utilizando comandos de update, insert o delete, o tambien cargas masivas.