Published on

Trabajar con Archivos JSON, TXT, CSV, Parquet y Avro en Python y R

Authors
  • avatar
    Name
    Jordan Rodriguez
    Twitter

Tutorial: Trabajar con Archivos JSON, TXT, CSV, Parquet y Avro en Python y R

En este tutorial, aprenderás cómo crear, leer y guardar archivos en los formatos JSON, TXT, CSV, Parquet y Avro utilizando Python y R.

Python

JSON

  1. Crear y Guardar un Archivo JSON:

    import json
    
    data = {"nombre": "John", "edad": 30, "ciudad": "New York"}
    
    with open('data.json', 'w') as json_file:
        json.dump(data, json_file)
    
  2. Leer un Archivo JSON:

    with open('data.json', 'r') as json_file:
        data = json.load(json_file)
        print(data)
    

TXT

  1. Crear y Guardar un Archivo TXT:

    data = "Este es un archivo de texto."
    
    with open('data.txt', 'w') as txt_file:
        txt_file.write(data)
    
  2. Leer un Archivo TXT:

    with open('data.txt', 'r') as txt_file:
        data = txt_file.read()
        print(data)
    

CSV

  1. Crear y Guardar un Archivo CSV:

    import csv
    
    data = [["nombre", "edad", "ciudad"],
            ["John", 30, "New York"],
            ["Anna", 25, "London"],
            ["Mike", 35, "San Francisco"]]
    
    with open('data.csv', 'w', newline='') as csv_file:
        writer = csv.writer(csv_file)
        writer.writerows(data)
    
  2. Leer un Archivo CSV:

    import csv
    
    with open('data.csv', 'r') as csv_file:
        reader = csv.reader(csv_file)
        for row in reader:
            print(row)
    

Parquet

  1. Crear y Guardar un Archivo Parquet:

    import pandas as pd
    
    data = {
        "nombre": ["John", "Anna", "Mike"],
        "edad": [30, 25, 35],
        "ciudad": ["New York", "London", "San Francisco"]
    }
    df = pd.DataFrame(data)
    df.to_parquet('data.parquet')
    
  2. Leer un Archivo Parquet:

    import pandas as pd
    
    df = pd.read_parquet('data.parquet')
    print(df)
    

Avro

  1. Crear y Guardar un Archivo Avro:

    import fastavro
    from fastavro.schema import load_schema
    
    schema = load_schema('schema.avsc')
    records = [{"nombre": "John", "edad": 30, "ciudad": "New York"},
               {"nombre": "Anna", "edad": 25, "ciudad": "London"},
               {"nombre": "Mike", "edad": 35, "ciudad": "San Francisco"}]
    
    with open('data.avro', 'wb') as avro_file:
        fastavro.writer(avro_file, schema, records)
    
  2. Leer un Archivo Avro:

    import fastavro
    
    with open('data.avro', 'rb') as avro_file:
        reader = fastavro.reader(avro_file)
        for record in reader:
            print(record)
    

R

JSON

  1. Crear y Guardar un Archivo JSON:

    install.packages("jsonlite")
    library(jsonlite)
    
    data <- list(nombre = "John", edad = 30, ciudad = "New York")
    write_json(data, "data.json")
    
  2. Leer un Archivo JSON:

    library(jsonlite)
    
    data <- fromJSON("data.json")
    print(data)
    

TXT

  1. Crear y Guardar un Archivo TXT:

    data <- "Este es un archivo de texto."
    writeLines(data, "data.txt")
    
  2. Leer un Archivo TXT:

    data <- readLines("data.txt")
    print(data)
    

CSV

  1. Crear y Guardar un Archivo CSV:

    data <- data.frame(
        nombre = c("John", "Anna", "Mike"),
        edad = c(30, 25, 35),
        ciudad = c("New York", "London", "San Francisco")
    )
    write.csv(data, "data.csv", row.names = FALSE)
    
  2. Leer un Archivo CSV:

    data <- read.csv("data.csv")
    print(data)
    

Parquet

  1. Crear y Guardar un Archivo Parquet:

    install.packages("arrow")
    library(arrow)
    
    data <- data.frame(
        nombre = c("John", "Anna", "Mike"),
        edad = c(30, 25, 35),
        ciudad = c("New York", "London", "San Francisco")
    )
    write_parquet(data, "data.parquet")
    
  2. Leer un Archivo Parquet:

    library(arrow)
    
    data <- read_parquet("data.parquet")
    print(data)
    

Avro

  1. Crear y Guardar un Archivo Avro:

    install.packages("avro")
    library(avro)
    
    schema <- avro_schema({
          "type": "record",
          "name": "User",
          "fields": [
             {"name": "nombre", "type": "string"},
             {"name": "edad", "type": "int"},
             {"name": "ciudad", "type": "string"}
          ]
    })
    data <- data.frame(
          nombre = c("John", "Anna", "Mike"),
          edad = c(30, 25, 35),
          ciudad = c("New York", "London", "San Francisco")
    )
    write_avro(data, schema, "data.avro")
    
  2. Leer un Archivo Avro:

    library(avro)
    
    data <- read_avro("data.avro")
    print(data)
    

Conclusión

Este tutorial te ha mostrado cómo crear, leer y guardar archivos en los formatos JSON, TXT, CSV, Parquet y Avro utilizando Python y R. Cada formato tiene sus propias ventajas y desventajas, y la elección del formato adecuado depende de los requisitos específicos de tu proyecto.


¡Disfruta explorando y desarrollando tus proyectos de Data Science creando, leyendo y guardando archivos de datos!