Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
0
respuestas

Desafío: Manipulando una base de datos.

Usted es responsable de crear una base de datos local de clientes para una institución financiera. Disponemos del archivo CSV con los datos de los clientes.

Tu misión es:

  1. Crear la base de datos local con la biblioteca SQLAlchemy.
import pandas as pd
from sqlalchemy import create_engine, text
# Crear base de datos SQLite
engine = create_engine("sqlite:///clientes_banco.db")
  1. Escribir los datos del archivo CSV en esta base de datos local.
# Cargar CSV en un DataFrame
ruta_csv = "clientes_banco.csv"
df_clientes = pd.read_csv(ruta_csv)

# Escribir DataFrame en la base de datos
df_clientes.to_sql(
    name="clientes",
    con=engine,
    if_exists="replace",  # reemplaza si existe
    index=False
)
print("Base de datos creada y datos cargados correctamente.")
  1. Realizar tres actualizaciones en la base de datos:
  • Actualizar el registro del cliente ID 6840104 cuyo rendimiento anual cambió a 300000.
# Conexión para ejecutar SQL
with engine.connect() as conn:

    # 1) Actualizar rendimiento anual del cliente ID 6840104
    conn.execute(
        text("""
        UPDATE clientes
        SET Rendimiento_anual = 300000
        WHERE ID_cliente = 6840104
        """)
    )
  • Eliminar el registro de cliente ID 5008809, ya que esta persona ya no tiene cuenta en la institución financiera.
# 2) Eliminar cliente ID 5008809
with engine.connect() as conn:

    conn.execute(
        text("""
        DELETE FROM clientes
        WHERE ID_cliente = 5008809
        """)
    )
  • Crear un nuevo registro de cliente siguiendo las especificaciones a continuación:

  • ID_cliente: 6850985

  • Edad: 33

  • Grado_estudio: Doctorado

  • Estado_civil: Soltero

  • Tamaño_familia: 1

  • Categoria_de_renta: Empleado

  • Ocupacion: TI

  • Años_empleado: 2

  • Rendimiento_anual: 290000

  • Tiene_carro: 0

  • Vivienda: Casa/Departamento propio

Consejo importante: Para agregar un nuevo cliente a la tabla, use la cláusula INSERT INTO seguida del nombre de la tabla y luego especifique los nombres de las columnas de la tabla entre paréntesis. Utilice la cláusula VALUES y luego pase entre paréntesis los nuevos valores para este nuevo registro. Asegúrese de que los valores estén en el orden correcto y en el formato adecuado para cada columna.

# 3) Insertar nuevo cliente
  with engine.connect() as conn:

    conn.execute(
        text("""
        INSERT INTO clientes (
            ID_cliente,
            Edad,
            Grado_estudio,
            Estado_civil,
            Tamaño_familia,
            Categoria_de_renta,
            Ocupacion,
            Años_empleado,
            Rendimiento_anual,
            Tiene_carro,
            Vivienda
        ) VALUES (
            6850985,
            33,
            'Doctorado',
            'Soltero',
            1,
            'Empleado',
            'TI',
            2,
            290000,
            0,
            'Casa/Departamento propio'
        )
        """)
    )

    conn.commit()
    print("Actualizaciones realizadas correctamente.")

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad