Python para inteligencia artificial y análisis de datos
¿No eres programador de profesión, pero igual quieres usar Python y la IA en tu trabajo diario? ¡No hay problema! Aprende a usar Python para analizar datos, automatizar tareas y trabajar con modelos sin atascarte en tareas innecesarias. Conocerás herramientas clave como Visual Studio Code y Jupyter Notebooks, y luego te lanzarás directamente al análisis y la visualización de datos con NumPy, pandas y Matplotlib. Los ejemplos prácticos te permitirán aprender a limpiar, filtrar y transformar datos, realizar cálculos y crear gráficos y diagramas interactivos, ¡desde el primer momento!
- Una guía práctica de Python para proyectos de IA y datos
- Aprende a analizar y visualizar datos con NumPy, pandas y Matplotlib
- Utiliza la IA y el aprendizaje automático para la modelación predictiva, el análisis de texto y el reconocimiento de imágenes
Aprenderás sobre:
- Análisis y visualización de datos:
Ponte manos a la obra con el stack de datos de Python. Usa NumPy y pandas para cargar, limpiar, filtrar y transformar datos de CSV, Excel, JSON y otros formatos. Luego, convierte tus resultados en gráficos atractivos y diagramas interactivos con Matplotlib.
- Aprendizaje automático e inteligencia artificial:
¡Aplica las herramientas que usan los profesionales! Trabaja con métodos clásicos de aprendizaje automático —regresión lineal, árboles de decisión, agrupamiento y más— antes de pasar al procesamiento del lenguaje natural, el análisis de sentimiento, la clasificación de imágenes y el aprendizaje profundo.
- Automatización y aplicaciones del mundo real:
Lleva a Python más allá del análisis. Crea herramientas web ligeras con Flask y Streamlit, extrae información de páginas web, consulta bases de datos y automatiza tareas recurrentes, desde el procesamiento de PDF y la generación de documentos hasta la recuperación programada de datos y las notificaciones por correo electrónico.
Aspectos Destacados:
- Fundamentos de Python
- Análisis de datos
- Visualización de datos
- Aprendizaje automático
- Procesamiento del lenguaje natural
- Análisis de texto y de sentimiento
- Reconocimiento y clasificación de imágenes
- API y extracción de datos de la web
- Acceso a bases de datos
- Automatización de tareas
Ver Tabla de Contenidos Completa
- 1 Introducción
- 1.1 Habilidad para el futuro: Programación
- 1.2 Python
- 1.3 Inteligencia artificial
- 1.4 Aprendizaje automático
- 1.5 Programación con la ayuda de la IA
- 1.6 Ingeniería de prompts
- 2 Introducción a Python
- 2.1 Instalación de Python en Windows
- 2.2 Instalación de Python en macOS y Linux
- 2.3 Uso de Python en modo interactivo
- 2.4 Scripts de Python
- 2.5 Visual Studio Code y entornos de desarrollo integrados
- 2.6 Cuadernos de Jupyter
- 2.6.1 Creación de cuadernos de Jupyter en Visual Studio Code
- 2.6.2 Celdas Markdown
- 2.6.3 Celdas de código
- 3 Conceptos básicos del lenguaje Python
- 3.1 Variables y tipos de datos
- 3.2 Comentarios
- 3.3 Funciones
- 3.4 Condicionales con «if», «elif» y «else»
- 3.5 Operadores de comparación
- 3.6 Números
- 3.7 El bucle «while»
- 3.8 El ciclo «for»
- 3.9 Más sobre «print»
- 3.10 Listas, conjuntos, tuplas y diccionarios
- 3.11 El ciclo «for» para listas y más
- 3.12 Programa de ejemplo: conteo de palabras
- 3.13 Cómo escribir tus propias funciones
- 3.14 Código «pythónico»
- 3.14.1 Crear una nueva lista a partir de una lista
- 3.14.2 Filtrar elementos de una lista
- 3.14.3 Concatenar cadenas sin el operador «+»
- 3.14.4 Búsqueda de un valor en una lista
- 3.14.5 Descomposición de tuplas
- 3.14.6 Contadores de bucle
- 3.14.7 Iteración sobre los pares clave-valor de un diccionario
- 3.14.8 Intercambio de valores de variables
- 3.14.9 Asignación directa de un valor booleano
- 3.14.10 Distinción entre mayúsculas y minúsculas
- 3.14.11 Recuperación de un valor por defecto de un diccionario
- 3.14.12 Operador «walrus»
- 3.15 Importación de módulos e instalación de paquetes con «pip»
- 3.16 Entornos virtuales
- 4 Trabajar con archivos
- 4.1 Lectura y escritura de archivos de texto
- 4.2 Archivos de valores separados por comas
- 4.3 Administración de archivos
- 4.3.1 Creación de un archivo
- 4.3.2 Verificar la existencia de un archivo y eliminar archivos
- 4.3.3 Mover, renombrar y copiar archivos
- 4.3.4 Listado de archivos en un directorio
- 4.4 Ejemplo: Análisis de texto
- 4.5 Archivos de Excel
- 4.6 Archivos de imagen
- 4.7 Archivos JSON
- 4.8 Archivos XML
- 4.9 Archivos de configuración
- 5 Análisis de datos
- 5.1 NumPy
- 5.2 Pandas
- 5.3 Carga de datos desde archivos a DataFrames de Pandas
- 5.4 Limpieza de datos con Pandas
- 5.4.1 Filtrado de datos
- 5.4.2 Identificación y manejo de valores faltantes
- 5.4.3 Eliminación de duplicados
- 5.4.4 Identificación y corrección de errores y valores atípicos
- 5.4.5 Transformación de datos al formato deseado
- 5.4.6 (Des)codificación de categorías
- 5.4.7 Normalización: hacer que los valores sean comparables
- 5.5 Cálculos y análisis con Pandas
- 5.5.1 Cálculos fila por fila
- 5.5.2 Diferencias respecto al valor anterior
- 5.5.3 Agregación de valores
- 5.5.4 Sumas acumulativas
- 5.5.5 Agrupación de datos
- 5.5.6 Ordenación y clasificación de datos
- 5.6 Fusión de datos de múltiples fuentes
- 6 Visualizaciones con Matplotlib
- 6.1 Creación de gráficos
- 6.2 Opciones de diseño
- 6.3 Subgráficos: varios gráficos en una sola figura
- 6.4 Gráficos de líneas, de barras y más
- 6.5 Creación de gráficos a partir de DataFrames
- 6.6 Gráficos interactivos
- 6.7 Acercamiento y desplazamiento
- 7 Aprendizaje automático e inteligencia artificial
- 7.1 Predicción de números mediante regresión lineal
- 7.2 Regresión lineal con múltiples factores
- 7.3 Clasificación mediante regresión logística
- 7.4 Árboles de decisión y bosques aleatorios
- 7.5 K vecinos más cercanos
- 7.6 Máquinas de vectores de soporte
- 7.7 Datos de entrenamiento, datos de prueba y evaluación de modelos
- 7.8 Agrupamiento (aprendizaje no supervisado)
- 8 La IA en acción: análisis de texto e imágenes
- 8.1 IA para texto y lenguaje
- 8.2 Análisis de texto y nubes de palabras
- 8.3 Preprocesamiento de texto
- 8.4 Análisis de sentimiento
- 8.5 Reconocimiento de entidades en el texto: reconocimiento de entidades nombradas
- 8.6 Aprendizaje por transferencia
- 8.7 IA para imágenes
- 8.8 Preprocesamiento de imágenes: conversión a escala de grises y más
- 8.9 Detección de bordes y contornos en imágenes
- 8.10 Métodos clásicos de aprendizaje automático para imágenes
- 8.11 Clasificación de imágenes con aprendizaje profundo
- 9 Uso de API
- 9.1 Solicitudes de API con «requests»
- 9.2 Acceso a las API con SDK especiales
- 9.3 Visualización y análisis de datos de API
- 9.4 API de ChatGPT
- 10 Uso de Python en la web
- 10.1 HTML
- 10.2 Flask: un servidor web en Python
- 10.3 Herramientas web interactivas con Streamlit
- 10.4 Lectura de contenido web con Beautiful Soup
- 10.5 Control remoto del navegador con Selenium
- 10.6 Envío de correos electrónicos y mensajes de Messenger
- 11 Bases de datos
- 11.1 El lenguaje SQL y la consola de SQLite
- 11.2 Creación de tablas con CREATE TABLE
- 11.3 Consultar, insertar, actualizar y eliminar con SELECT, INSERT, UPDATE y DELETE
- 11.4 Acceso a una base de datos SQLite con Python
- 11.5 DataFrame de Pandas: lectura y escritura de datos de bases de datos
- 12 Automatización de tareas rutinarias
- 12.1 Recuperación de datos a través de la API y su almacenamiento en una base de datos
- 12.2 Creación de gráficos a partir de la base de datos y guardarlos como archivos de imagen
- 12.3 Envío de un correo electrónico cuando hay novedades
- 12.4 Envío de capturas de pantalla de páginas web a través de Messenger
- 12.5 Imágenes: reducción del tamaño de los archivos, búsqueda de ubicaciones y limpieza
- 12.6 PDF: dividir, fusionar y consolidar archivos
- 12.7 Reconocer texto en imágenes de tarjetas de presentación mediante OCR y guardarlo en la agenda de tu celular
- 12.8 Creación de facturas, fusiones de correspondencia y otros documentos
- 12.9 Ejecutar scripts de Python de manera programada
- 12.10 Registro en automatizaciones
- El autor
- Índice
Python for AI and Data Analysis
Not a programmer by trade, but still want to use Python and AI in your day-to-day work? No problem! Learn how to use Python to analyze data, automate tasks, and work with models without getting bogged down by unnecessary busy work. You’ll learn about key tools like Visual Studio Code and Jupyter Notebooks and then jump straight into data analysis and visualization with NumPy, pandas, and Matplotlib. Hands-on examples will have you learning to clean, filter, and transform data, perform calculations, and create charts and interactive plots—right out of the gate!
- A practical guide to Python for AI and data projects
- Learn to analyze and visualize data with NumPy, pandas, and Matplotlib
- Use AI and machine learning for predictive modeling, text analysis, and image recognition
You'll learn about:
- Data Analysis and Visualization:
Get hands on with the Python data stack. Use NumPy and pandas to load, clean, filter, and transform data from CSV, Excel, JSON, and other formats. Then turn your results into compelling charts and interactive plots with Matplotlib.
- Machine Learning and AI:
Apply the tools professionals use! Work through classical machine learning methods—linear regression, decision trees, clustering, and more—before moving into natural language processing, sentiment analysis, image classification, and deep learning.
- Automation and Real-World Applications:
Take Python beyond analysis. Build lightweight web tools with Flask and Streamlit, scrape web pages, query databases, and automate recurring tasks—from PDF processing and document generation to scheduled data retrieval and email notifications.
Key Highlights:
- Python fundamentals
- Data analysis
- Data visualization
- Machine learning
- Natural language processing
- Text and sentiment analysis
- Image recognition and classification
- APIs and web scraping
- Database access
- Task automation
View Full Table of Contents
- 1 Introduction
- 1.1 Future Skill: Programming
- 1.2 Python
- 1.3 Artificial Intelligence
- 1.4 Machine Learning
- 1.5 Programming with the Help of AI
- 1.6 Prompt Engineering
- 2 Getting Started with Python
- 2.1 Installing Python on Windows
- 2.2 Installing Python on macOS and Linux
- 2.3 Using Python in Interactive Mode
- 2.4 Python Scripts
- 2.5 Visual Studio Code and Integrated Development Environments
- 2.6 Jupyter Notebooks
- 2.6.1 Creating Jupyter Notebooks in Visual Studio Code
- 2.6.2 Markdown Cells
- 2.6.3 Code Cells
- 3 Basics of the Python Language
- 3.1 Variables and Data Types
- 3.2 Comments
- 3.3 Functions
- 3.4 Conditionals with "if," "elif," and "else"
- 3.5 Comparison Operators
- 3.6 Numbers
- 3.7 The "while" Loop
- 3.8 The “for” Loop
- 3.9 More on "print"
- 3.10 Lists, Sets, Tuples, and Dictionaries
- 3.11 "for" Loop for Lists and More
- 3.12 Sample Program: Counting Words
- 3.13 Writing Your Own Functions
- 3.14 Pythonic Code
- 3.14.1 Create a New List from a List
- 3.14.2 Filtering Elements from a List
- 3.14.3 Concatenating Strings Without "+"
- 3.14.4 Searching for a Value in a List
- 3.14.5 Tuple Decomposition
- 3.14.6 Loop Counters
- 3.14.7 Iterating over the Key-Value Pairs in a Dictionary
- 3.14.8 Swapping Variable Values
- 3.14.9 Assigning a Boolean Directly
- 3.14.10 Case Differentiation
- 3.14.11 Retrieving a Default Value from a Dictionary
- 3.14.12 Walrus Operator
- 3.15 Importing Modules and Installing Packages with "pip"
- 3.16 Virtual Environments
- 4 Working with Files
- 4.1 Reading and Writing Text Files
- 4.2 Comma-Separated Values Files
- 4.3 Managing Files
- 4.3.1 Creating a File
- 4.3.2 Checking for File Existence and Deleting Files
- 4.3.3 Moving, Renaming, and Copying Files
- 4.3.4 Listing Files in a Directory
- 4.4 Example: Text Analysis
- 4.5 Excel Files
- 4.6 Image Files
- 4.7 JSON Files
- 4.8 XML Files
- 4.9 Configuration Files
- 5 Data Analysis
- 5.1 NumPy
- 5.2 Pandas
- 5.3 Loading Data from Files into Pandas DataFrames
- 5.4 Data Cleaning with Pandas
- 5.4.1 Filtering Data
- 5.4.2 Identifying and Handling Missing Values
- 5.4.3 Removing Duplicates
- 5.4.4 Identifying and Correcting Errors and Outliers
- 5.4.5 Transforming Data into the Desired Format
- 5.4.6 (De)coding Categories
- 5.4.7 Normalizing: Making Values Comparable
- 5.5 Calculations and Analyses with Pandas
- 5.5.1 Row-by-Row Calculations
- 5.5.2 Differences from the Previous Value
- 5.5.3 Aggregating Values
- 5.5.4 Cumulative Sums
- 5.5.5 Grouping Data
- 5.5.6 Sorting and Ranking Data
- 5.6 Merging Data from Multiple Sources
- 6 Visualizations with Matplotlib
- 6.1 Creating Plots
- 6.2 Design Options
- 6.3 Subplots: Multiple Plots in a Single Figure
- 6.4 Line Charts, Bar Charts, and More
- 6.5 Creating Charts from DataFrames
- 6.6 Interactive Charts
- 6.7 Zooming and Scrolling
- 7 Machine Learning and Artificial Intelligence
- 7.1 Predicting Numbers Using Linear Regression
- 7.2 Linear Regression with Multiple Factors
- 7.3 Classification Using Logistic Regression
- 7.4 Decision Trees and Random Forests
- 7.5 K-Nearest Neighbors
- 7.6 Support Vector Machines
- 7.7 Training Data, Test Data, and Model Evaluation
- 7.8 Clustering (Unsupervised Learning)
- 8 AI in Action: Text and Image Analysis
- 8.1 AI for Text and Language
- 8.2 Text Analysis and Word Clouds
- 8.3 Text Preprocessing
- 8.4 Sentiment Analysis
- 8.5 Recognizing Entities in Text: Named Entity Recognition
- 8.6 Transfer Learning
- 8.7 AI for Images
- 8.8 Image Preprocessing: Grayscale Conversion and More
- 8.9 Detecting Edges and Contours in Images
- 8.10 Classic Machine Learning Methods for Images
- 8.11 Image Classification with Deep Learning
- 9 Using APIs
- 9.1 API Requests with "requests"
- 9.2 API Access with Special SDKs
- 9.3 Visualizing and Analyzing API Data
- 9.4 ChatGPT API
- 10 Using Python on the Web
- 10.1 HTML
- 10.2 Flask: A Python Web Server
- 10.3 Interactive Web Tools with Streamlit
- 10.4 Reading Web Content with Beautiful Soup
- 10.5 Remotely Controlling the Browser with Selenium
- 10.6 Sending Emails and Messenger Messages
- 11 Databases
- 11.1 The SQL Language and the SQLite Console
- 11.2 Creating Tables with CREATE TABLE
- 11.3 Querying, Inserting, Updating, and Deleting with SELECT, INSERT, UPDATE, and DELETE
- 11.4 Accessing an SQLite Database with Python
- 11.5 Pandas DataFrame: Reading and Writing Data from Databases
- 12 Automating Routine Tasks
- 12.1 Retrieving Data via the API and Storing It in a Database
- 12.2 Creating Charts from the Database and Save as Image Files
- 12.3 Sending an Email When There’s Something New
- 12.4 Sending Screenshots of Web Pages via Messenger
- 12.5 Images: Reducing File Sizes, Finding Locations, and Cleaning Up
- 12.6 PDF: Splitting, Merging, and Consolidating Files
- 12.7 Recognizing Text on Business Card Images Using OCR and Saving to Your Phone’s Address Book
- 12.8 Creating Invoices, Mail Merges, and Other Documents
- 12.9 Running Python Scripts on a Schedule
- 12.10 Logging in Automations
- The Author
- Index