Antes de zambullirnos en el vasto océano de la estadística descriptiva y empezar a diseccionar sets de datos, es crucial entender los tipos de datos con los que nos encontramos habitualmente en ciencia de datos. Los datos se dividen principalmente en dos categorías: categóricos y numéricos.
¿Qué son los datos categóricos?
Los datos categóricos son aquellos que no están representados por números. Pueden ser cadenas de texto, pero esencialmente son categorías. Por ejemplo:
Género de una persona: masculino, femenino.
Categoría de una película: terror, acción, drama.
Método de pago en un eCommerce: tarjeta de crédito, PayPal.
Estos datos pueden parecer numéricos en algunos casos, pero son simplemente categorías y deben interpretarse como tales.
Diferencia entre datos nominales y ordinales
Dentro de los datos categóricos, se pueden distinguir entre nominales y ordinales:
Ordinales: Existe una relación de orden entre las categorías. Por ejemplo, tamaños de ropa como pequeño, mediano y grande.
Nominales: Las categorías no tienen un orden natural. Ejemplo: colores de coches como rojo, azul, verde.
¿Y los datos numéricos?
En la otra orilla de la clasificación encontramos los datos numéricos. Este tipo de datos se representan exclusivamente con números y deben tratarse numéricamente. Ejemplos comunes incluyen:
Altura de una persona: medida en metros.
Edad: años de una persona.
Temperatura: en grados centígrados.
Además, los datos numéricos pueden ser categorizados en discretos y continuos, de la siguiente manera:
Discretos: Valores enteros. Ejemplo, un conjunto de edades como 15, 20, 25 años.
Continuos: Pueden tener una parte decimal, como 1.75 metros de altura o 18.5 grados de temperatura.
En términos computacionales, estas distinciones se traducen en el uso de tipos de variable enteras y floats.
¿Cómo trabajo con estos datos en un ambiente de notebooks?
Moverse en el mundo de la ciencia de datos significa trabajar en ambientes que faciliten la manipulación y análisis de información. Los notebooks son el espacio ideal para explorar datos.
¿Cómo inicio con el uso de herramientas?
Una herramienta destacada en este campo es DeepNote. Similar a Jupyter o Google Colab, DeepNote permite crear notebooks para analizar datos:
Inicio: Crea una cuenta gratuita y explora el panel de control para gestionar proyectos.
Ventaja colaborativa: Puedes trabajar en tiempo real con otros usuarios, visualizando y compartiendo cambios al instante.
Primeros pasos: Cargar un dataset
Para poner manos a la obra con análisis de datos, lo primero es cargar una base de datos en formato CSV utilizando Python y, específicamente, la librería Pandas.
import pandas as pd
# Cargar el archivo CSVdf = pd.read_csv('cars.csv')# Mostrar el data frameprint(df)
Con Pandas, podemos rápidamente ver un resumen de los tipos de datos presentes y comenzar a generar estadísticas descriptivas que nos den una idea de la estructura del dataset.
Estadísticas descriptivas básicas con Pandas
Sin divagaciones innecesarias, Pandas nos ofrece la funcionalidad de generar estadísticas descriptivas con facilidad.
En una sola línea, Pandas nos muestra un sumario con medidas como el promedio, desviación estándar, y percentiles de las variables numéricas del dataset.
¿Por qué seguir explorando el tema?
Aprender a identificar y clasificar tipos de datos es solo el inicio. En lecciones futuras, se explorará en detalle conceptos claves como medidas de tendencia central y dispersión. Estos conocimientos proveerán una comprensión más profunda de cómo analizar conjuntos de datos de manera efectiva y detallada. ¡Así que sigue adelante, el viaje apenas comienza!
Poner Deepnote en dark mode
En su documentación oficial mencionan que actualmente no tienen un dark mode desarrollado, pero esperan tenerlo en un futuro cercano. Mientas tanto, recomiendan instalar esta extensión y configurarla con estos valores:
Brightness +20
Contrast -20
Sepia off
Greyscale +15
.
Tip adicional: todas tus pestañas del navegador se verán así, por lo que te recomiendo usar Alt + Shift + D para activar y desactivar el dark mode de tu navegador (te será muy útil en cosas páginas como Deepnote o Drive, pero otras como Platzi, se ven mejor si lo desactivas)
.
El resultado será algo como esto:
Actualización al comentario:
Para no tener que estar prendiendo y apagando el dark mode, puedes añadir las páginas que quieres que lo tengan. Sigue estos pasos:
Abre la extensión
Ve a "Site list"
Da clic a "Invert listed only"
Añade los sitios que quieres que mantengan el dark mode y solo se aplicará a ellos.
Se agradece mucho esta modalidad donde miembros del team dejan tips muy detallados de las cosas. Gracias!
Tipos de datos estadísticos
Datos categóricos
Los datos categóricos también conocidos como datos cualitativos, representan características como el género, el idioma, etc. de una persona. También pueden tomar valores numéricos, por ejemplo: 1 para mujeres y 0 para hombres. Hay que tener en cuenta que esos números no tienen significado matemático.
Los tipos de datos estadísticos categóricos se clasifican en:
.
Datos nominales: Otros de los tipos de datos estadísticos son los que tienen valores nominales que representan unidades discretas y se usan para etiquetar variables que no tienen un valor cuantitativo.
Estos datos no tienen un orden, aunque cambiara el orden de sus valores, no cambia su significado.
Datos ordinales: Los datos ordinales representan unidades discretas y ordenadas. Por lo tanto, es casi lo mismo que los datos nominales, excepto que su orden es importante.
Las escalas ordinales generalmente, se usan para medir características no numéricas como la felicidad, la satisfacción del cliente, etc.
.
Datos numéricos
Estos tipos de datos estadísticos también se conocen como datos cuantitativos, y se refieren a una medida o recuento. Se clasifican de la siguiente manera:
.
Datos discretos: Los datos estadísticos son discretos cuando sus valores son distintos y separados. Es decir, cuando los datos sólo pueden tomar ciertos valores.
Este tipo de datos no se puede medir, pero se pueden contar. Básicamente representan información que se puede clasificar.
Datos continuos: Los datos continuos representan mediciones y, por lo tanto, sus valores. no se pueden contar, pero se pueden medir. A su vez, estos se clasifican de la siguiente manera:
Datos de intervalo: Los datos de intervalo representan unidades ordenadas que tienen la misma diferencia . Por lo tanto, hablamos de datos de intervalo cuando tenemos una variable que contiene valores numéricos que están ordenados y donde conocemos las diferencias exactas entre los valores.
.
El problema con los datos de valores de intervalo es que podemos sumar y restar, pero no podemos multiplicar, dividir o calcular razones. Debido a que no existe un cero verdadero, no se pueden aplicar muchas estadísticas descriptivas e inferenciales.
.
Datos de relación: También son unidades ordenadas que tienen la misma diferencia. Los datos de relación son los mismos que los valores de intervalo, con la diferencia de que tienen un cero absoluto.
Muchas gracias por tu aporte, me quedaron más claros varios conceptos después de leer tu comentario.
Gracias!
Por si no sabias:
JUPYTER. Son unos "cuadernos" o notebooks, en los que puedes programar por bloques. Como si escribieras un cuaderno. En una porcion, ejecutas una linea sin que tengas que correr todo el programa. Busca ANACONDA
KAGGLE. Es una web que tiene concursos para analistas de datos y programadores, tiene bases de datos de uso libre.
COLAB. Es el Jupyter de Google, es decir no descargas ni instalas nada, lo tienes todo en linea.
DEEPNOTE. Herramienta para crear trabajos en simultaneo con otros colaboradores con los que se pueden hacer cambios en tiempo real en tus lineas de codigo
Amigos les dejo el cheat sheet de ciencia de datos con PANDAS 😁
Muchas gracias Carla! Donde lo conseguiste?
Está genial, muchas gracias
++Fun Fact:++ El Fundador del Proyecto Jupyter es colombiano, paisa.
Se llama Fernando Pérez, es Físico de la Universidad de Antioquía y además de eso, otro proyecto destacable dentro de la comunidad es IPython
Excelente dato, muchas gracias
Si quieres moverte mas rápido por los bloques de código, te invito a que revises la paleta de comandos que ofrece Deppnote, puedes acceder con ctrl+p , presionado Esc o dando click al icono de la parte inferior izquierda.
Se te desplegara un menu, es muy parecido a las jupyter notebook pero si tiene un par de diferencias para insertar celdas por debajo o encima. Dejo un pequeño resumen de los comandos mas utilizados a mi criterio.
ctrl + k añadir un bloque de código por encima del bloque actual
ctrl + j añadir un bloque de codigo por debajo del bloque actual
ctrl+enter ejecutar el bloque actual
alt + shift + flecha arriba mover un bloque arriba
alt + shift + flecha abajo mover un bloque abajo
ctrl + shift + D duplicar el bloque
.
vale la pena echarle un ojo :D
Definitivamente lo de los shortcuts es lo mejor de la vida, dejo una tabla con los que mencionaste más algunos otros:
Shortcut
Función
Ctrl + Enter
→ Ejecuta la el bloque de código.
Shift + Enter
→ Ejecuta la el bloque de código y crea uno nuevo debajo.
Ctrl + Shift + M
→ Transforma un bloque de código a uno de markdown.
Ctrl + Shift + Y
→ Transforma un bloque de markdonw a uno de código.
Ctrl + J
→ Crea un nuevo bloque debajo.
Ctrl + K
→ Crea un nuevo bloque encima.
Ctrl + Shift + Del
→ Elimina un bloque.
Alt + Shift + ↑
→ Mover un bloque arriba.
Alt + Shift + ↓
→ Mover un bloque abajo.
Alt + ↑ o ↓
→ Navega entre los bloques.
Ctrl + Shift + D
→ Duplicar un bloque.
Esc
→ Abre la paleta de comandos.
Excelente aporte
Pandas cheat sheets
Descarga la version completa en PDF dando click aca
Ve a la pagina oficial para conocer mas etalles
.
Hola una duda existen cheat sheets de de mas librerias u otros progrmas como R u SQL? sabes donde las puedo buscar?
En esta web pueden encontrar cheat sheets de lo que quieran.
A medio curso descubrí este maravilloso canal donde te explican todo sobre el preprocesamiento de datos. Por tanto, se facilita tu camino en Deepnote. Descubre el porqué de sus comandos, su variedad y más. Espero te sirva
bro no encontrè el canal, revisa eso porfa
Ojalá estas definiciones puedan ayudar a alguien.
.
Datos numéricos
Éste tipo de datos se relacionan con mediciones y pueden operarse matemáticamente.
.
Ejemplos: altura, temperatura, número de habitantes.
.
Datos numéricos discretos
Que los datos numéricos sean discretos significa que están restringidos de tal forma que entre dos de sus valores posibles no existe una cantidad infinita de otros posibles valores.
.
Usualmente este tipo de datos numéricos se asocian a los números enteros.
.
Ejemplos: años cumplidos, unidades despachadas, horas completas trabajadas.
.
Datos numéricos continuos
Que los datos numéricos sean continuos significa que entre dos valores cualquiera de éstos datos existe una cantidad infinita de otros posibles valores.
.
Usualmente este tipo de datos numéricos se asocian al conjunto de los números reales.
Es sumamente molesto cuando las herramientas del curso no vienen como dicen, teniendo opciones mas viables se van a cosas que no funcionan como dice el instructor. Que horror
Valores cualitativos:
Son valores que clasifican o ordenan un dato, ejemplo, color del cabello, sirven para caracterizar o señalar pertenencia de un dato.
Ordinales: Es para dar una sensacion de orden en ocasiones son numeros, pero pueden ser palabras tambien ejemplo : Malo, Regular, Bueno, Excelente. Van de menor a mayor calidad
nominal: Es para clasficar o indicar pertenencia a algo. Ejemplo: Genero, nacionalidad, color de preferencia.
Hola comunidad soy nuevo en la escuela de data science y llevo los cursos en el orden correlativo que aparecen. Sin embargo me siento perdido en esta clase no le encuentro el sentido a nada de lo que veo en Deepnote, entonces me preguntaba si existen otros cursos que les ayudaron a entender el contenido de este de manera mas natural. Gracias. Con el tema de la estadistica y la matematica entiendo conceptual mente todo pero ya las herramientas como pandas, jupiter y todo lo que menciona, no se de que habla.
Hola Adrián, en mi caso sirvió ver algunos proyectos prácticos que implementaban pandas, numpy y matplotlib sobre jupyter en youtube.
Numpy
Pandas
Matplotlib
Ya después me fue más fácil retomar los cursos de Data Science, importante es que practiques con datasets que tengas a la mano o algunos de Kaggle que son muy buenos también. :)
¿Qué ventaja y desventaja tiene deepnote frente a colab ?
Deepnote tiene muchísimas características que lo hacen destacar por encima de Colab:
Colaborar en tiempo real con otras personas.
Tener su propia terminal.
Las integraciones con otras apps.
Su comunidad enfocada en Data Science.
Sus bloques de markdown y su tabla de contenidos.
La manera de compartir tu proyecto a modo de portafolio y que se vea como publicación.
Poder calendarizar cuándo ejecutar tus notebooks.
Tener todo ordenado a manera de proyectos.
Sus shortcuts para agilizar el flujo.
Y hay muchas cosas más. Algunas de las cosas que mencioné también las tiene Colab, pero en Deepnote creo que son más potentes.
En cuanto a desventajas no sabría decirte 🤔
En resumen:
Colaboración en tiempo real
Terminal integrada
No me quedé tan tranquilo con la definición de las subdivisiones de los datos, entonces investigué por ahí algo más amplio, les dejo lo que encontré por si a alguien le sirve:
Categóricos. Una variable categórica es una variable con un número limitado de valores distintos o categorías
Ordinal. Una variable puede tratarse como nominal cuando sus valores representan categorías sin clasificación intrínseca (por ejemplo, el departamento de la empresa en la que trabaja un empleado). Ejemplos de variables nominales incluyen la región, el código postal y la afiliación religiosa.
Nominal. Una variable puede ser tratada como ordinal cuando sus valores representan categorías con alguna clasificación intrínseca (por ejemplo, niveles de satisfacción de servicio de altamente insatisfecho a altamente satisfecho). Ejemplos de variables ordinales incluyen puntuaciones de actitud que representan grado de satisfacción o confianza y puntuaciones de calificación de preferencia.
**Numéricos. **
Discretos. El término discreto implica distinto o separado. Por lo tanto, los datos discretos se refieren al tipo de datos cuantitativos que se basan en los recuentos. Contienen solo valores finitos, cuya subdivisión no es posible. Incluye aquellos valores que solo se pueden contar en números enteros y están separados, lo que significa que los datos no se pueden dividir en fracciones o decimales. Por ejemplo: La cantidad de estudiantes en la escuela, la cantidad de autos en el estacionamiento, la cantidad de computadoras en un laboratorio de computadoras, la cantidad de animales en un zoológico, etc..
Continuos. Los datos continuos se describen como un conjunto de observaciones ininterrumpidas; Eso se puede medir en una escala. Puede tomar cualquier valor numérico, dentro de un rango finito o infinito de valor posible. Estadísticamente, el rango se refiere a la diferencia entre la observación más alta y más baja. Los datos continuos se pueden dividir en fracciones y decimales, es decir, se pueden subdividir significativamente en partes más pequeñas de acuerdo con la precisión de la medición. Por ejemplo, edad, altura o peso de una persona, tiempo necesario para completar una tarea, temperatura, tiempo, dinero, etc.
Antes de ver este curso ya usaba pandas. Entender que ahora el dtype de object no es un error sino que nos dice que es una variable categórica 😂
Tipos de datos
categoricos:
ordinal: Cuando existe una relacion de orden entre las categorías
Nominal: cuando no existe esta relacion
Numéricos:
discreto: ejemplo EDAD (enteros)
Continuos: Ejemplo altura (decimales)
Normalmente cuando pandas categoriza a una variable como objeto significa que no hay números allí, es una variable textual
Los boléanos TRUE o FALSE también están en las variables categóricas
Las variables numéricas esta en int64 (formato por defecto para variables enteras) y float64( formato por defecto para las variables continuas)
No pude usar la plataforma, me obliga a poner una TC
Realmente tampoco me gustó la idea pero al final lo hice con dudas y todo, aún así les pregunté y me respondieron:
Así que espero que todo vaya bien. La verdad que DeepNote está muy bien
Cual es la diferencia entre deepnote y colab ?
Hola
Te comparto algunas diferencias que he encontrado:
DeepNote
General
customer service
Resources
5gb ram free compute
UI and features
beautiful design
click-optimized UI (powerful hardware with one click)
real time collaboration
environment management
quick integration with AWS, Mongo, etc.
SQL cells
reactive apps with forms
automatic visualization
Google Colab
General
big community/network
Resources
12gb ram free compute
11gb free GPU memory
TPU (180 TFlops, 64gb HBM)
notebooks can run for at most 12 hours
UI and features
Forms
code snippets
3 razones por las que Deepnote es más poderoso que los famosos cuadernos Jupyter
Hola :)
Más allá de las diferencias de hardware (que pagando en ambas opciones será superior), hay algunas ventajas muuuy interesantes de Deepnote que lo hace sobresalir ante Colab.
La más importante es que puedes trabajar en equipo en tiempo real muy muy parecido a Google Docs (la he probado y es hermoso jaja).
Tiene conexión con un montón de Apps como AWS, Google, bases de datos, GitHub, etc.
Tiene una terminar integrada.
La forma de visualizar los datos es muchísimo mejor que la de Colab.
Tiene una gran cantidad de atajos de teclado que optimizarán tu workflow.
Y aquí un bono de oro: ¡Puedes crear tu portafolio de Data Science en Deepnote!
Te recomiendo mucho leer este blog y aprenderás cómo hacer esto último y cómo se ve con un ejemplo real:
https://platzi.com/blog/deepnote
Hola, por ejemplo, ¿si cambio el contenido de un café de 100ml, 200ml y 300ml a chico, mediano y grande estoy convirtiendo una variable numérica a categórica?
Hola 👋🏼
Sí, tenías los valores numericos 100, 200, 300 y los conviertes en tres categorias. 🙂