A tu propio ritmo

Explora nuestra extensa colección de cursos diseñados para ayudarte a dominar varios temas y habilidades. Ya seas un principiante o un aprendiz avanzado, aquí hay algo para todos.

Bootcamp

Aprende en vivo

Únete a nosotros en nuestros talleres gratuitos, webinars y otros eventos para aprender más sobre nuestros programas y comenzar tu camino para convertirte en desarrollador.

Próximos eventos en vivo

Catálogo de contenidos

Para los geeks autodidactas, este es nuestro extenso catálogo de contenido con todos los materiales y tutoriales que hemos desarrollado hasta el día de hoy.

Tiene sentido comenzar a aprender leyendo y viendo videos sobre los fundamentos y cómo funcionan las cosas.

Full-Stack Software Developer - 16w

Data Science and Machine Learning - 16 wks

Buscar en lecciones


IngresarEmpezar
← Regresar a lecciones

Weekly Coding Challenge

Todas las semanas escogemos un proyecto de la vida real para que construyas tu portafolio y te prepares para conseguir un trabajo. Todos nuestros proyectos están construidos con ChatGPT como co-pilot!

Únete al reto

Podcast: Code Sets You Free

Un podcast de cultura tecnológica donde aprenderás a luchar contra los enemigos que te bloquean en tu camino para convertirte en un profesional exitoso en tecnología.

Escuchar el podcast
Editar en Github
Abrir en Colab

Importación de Archivos Estáticos con Pandas

Carga de archivos en Python

A continuación vamos a ver ejemplos de código sobre cómo podemos cargar diferentes tipos de archivos. Este código no es ejecutable, ya que necesitarías tener en tu directorio de trabajo los ficheros para poder ejecutarlo. Sin embargo, lo puedes usar como referencia.

CSV

Un fichero CSV (Comma-Separated Values, Valores Separados por Comas) es un fichero que permite representar información en formato de tabla, donde las columnas se separan normalmente por una coma (,) (aunque también se admiten otros caracteres) y las filas por un salto de línea.

Normalmente, siempre que queramos leer un CSV necesitaremos cargarlo en un DataFrame de Pandas, así que el siguiente código lo posibilitaría:

In [ ]:
import pandas as pd

# Se establece la ruta al fichero que queremos leer
file = "input.csv"

# La función 'read_csv' permite llevar a cabo esta lectura, transformando el fichero en un DataFrame
df = pd.read_csv(file, sep = ",")

La función read_csv de Pandas tiene una gran cantidad de parámetros que permiten adaptar la lectura a las características del fichero. Puedes encontrar la documentación de esta función aquí.

Excel (XLSX, XLS)

Un fichero de Microsoft Excel (con extensión XLSX o XLS) es en sí una definición de tabla pura, por lo que permite también ser transformado en un DataFrame de Pandas:

In [ ]:
import pandas as pd

# Se establece la ruta del fichero que queremos leer
file = "input.xlsx"

# La función 'read_excel' permite llevar a cabo esta lectura, transformando el fichero en un DataFrame
df = pd.read_excel(file, sheet_name = "Hoja 1")

La función read_excel de Pandas tiene una gran cantidad de parámetros que permiten adaptar la lectura a las características del fichero. Puedes encontrar la documentación de esta función aquí.

JSON

Un fichero JSON (JavaScript Object Notation, Notación de Objeto de JavaScript) es un formato de archivo cuya función es la de transmitir información estructurada. Su lógica de ordenación tiene puntos similares al XML, pero la notación es distinta. En un fichero JSON, los elementos están jerarquizados.

Este tipo de ficheros pueden leerse de varias formas, ya que hay una relación directa entre los diccionarios en Python y este tipo de archivos. También lo podemos transformar en un DataFrame de Pandas si cuenta con una estructura regular.

1. Archivo a diccionario

Supongamos, por ejemplo, la siguiente estructura:

{
    "filename": "invoice.pdf",
    "numPages": 3,
    "fields": {
        "customerName": "Telefónica S.A.",
        "invoiceNumber": "1234ABCD",
        "totalAmount": "15.000",
        "currency": "EUR"
    }
}

Este tipo de elementos JSON solo puede ser transformado en un diccionario en Python. No tiene sentido leerlo como un DataFrame de Pandas, ya que no cuenta con una estructura afín, como veremos más adelante. Este fichero podríamos leerlo con el paquete json de Python:

In [ ]:
import json

# Se establece la ruta del fichero que queremos leer
file = "input.json"

with open(file, "r") as f:
    data = json.load(f)

2. Archivo a DataFrame

Supongamos, por ejemplo, la siguiente estructura:

{
    "files": [
        {
            "filename": "invoice1.pdf",
            "numPages": 3
        },
        {
            "filename": "invoice2.docx",
            "numPages": 10
        },
        {
            "filename": "invoice3.pdf",
            "numPages": 2
        }
    ],
    "status": 200
}

Este ejemplo de JSON replica una respuesta de un servidor tras haberle enviado una consulta. Parte de su contenido (realmente el que nos interesa) tiene una estructura en formato tabla, ya que cada elemento de la lista representaría una fila, y cada elemento (diccionario) representaría la columna. Así lo transformaríamos en DataFrame:

In [ ]:
import pandas as pd

# Se establece la ruta del fichero que queremos leer
file = "input.json"

# Primero leemos el contenido del JSON
with open(file, "r") as f:
    data = json.load(f)

# La función 'from_dict' permite llevar a cabo la transformación de JSON a DataFrame
df = pd.DataFrame.from_dict(data)

TXT

Un fichero TXT (TeXT, TeXTo) es un formato de archivo plano que contiene información estructurada o no. En este tipo de ficheros podemos replicar CSVs, JSONs, etcétera. Por eso, las lecturas previamente vistas también aplican a este tipo de ficheros. Para leer este tipo de ficheros, Python tiene una forma muy sencilla de hacerlo:

In [ ]:
# Se establece la ruta del fichero que queremos leer
file = "input.txt"

# Leemos el contenido del TXT
with open(file, "r") as f:
    data = f.read()
    data = f.readline(10)
    data = f.readlines()

En el ejemplo anterior se utilizan tres funciones, cada una con un resultado distinto. Supongamos que el fichero anterior tenía el siguiente contenido:

Hola qué tal
Este fichero es un documento de ejemplo
Para leerlo a través de Python

Función read()

Esta función lee todo el contenido del fichero en formato string incluyendo los saltos de línea como "\n". En el ejemplo anterior, el resultado sería:

"Hola qué tal\nEste fichero es un documento de ejemplo\nPara leerlo a través de Python".

Función readline(10)

Esta función lee los primeros n caracteres del fichero. En el ejemplo anterior, el resultado sería:

"Este fiche".

Como en la función le pasamos un 10 como argumento, entonces lee los primeros 10 caracteres.

Función readlines()

Esta función lee todo el contenido del fichero separando las líneas para devolverlo en formato de lista. En el ejemplo anterior, el resultado sería:

["Hola qué tal", "Este fichero es un documento de ejemplo", "Para leerlo a través de Python"].