# Convierta una hoja de cálculo en tabla
Abra **Agregar datos**, elija **Convertir una hoja de cálculo en tabla**, suba el archivo, revise las columnas y seleccione **Importar**. Los archivos siguientes pueden agregar filas, actualizar filas por clave o reemplazar todas las filas.
## Qué va a construir [#qué-va-a-construir]
Una tabla en Nexus, su base de datos, hecha a partir de una hoja de cálculo o un archivo CSV. Describirá sus columnas, agregará una validación que deja fuera las filas malas y cargará un segundo archivo. El archivo original también se guarda en una carpeta.
## Antes de empezar [#antes-de-empezar]
- Una hoja de cálculo (Excel) o un archivo CSV con fila de encabezados.
- Permiso para agregar datos. Los propietarios y administradores siempre lo tienen; los miembros lo reciben en [Acceso a datos](/docs/es/data/data-access).
- Para desarrolladores: el SDK instalado y una clave de API. Vea el [Inicio rápido](/docs/es/get-started/quickstart).
## Pasos [#pasos]
### Abra Agregar datos [#abra-agregar-datos]
Vaya a y elija **Convertir una hoja de cálculo en tabla**.
### Suba el archivo [#suba-el-archivo]
Elija su archivo y la carpeta donde guardarlo. Klarety muestra las columnas encontradas.
### Nombre la tabla e importe [#nombre-la-tabla-e-importe]
Revise el nombre de la tabla. Si ya existe, elija **Agregar filas** o **Reemplazar filas**. Seleccione **Importar** y luego abra la tabla.
### Describa las columnas [#describa-las-columnas]
Agregue una descripción a cada columna que no sea obvia. La IA de Studios y agentes las lee, así que unas buenas dan mejores respuestas.
### Agregue una validación de datos [#agregue-una-validación-de-datos]
Abra las validaciones de datos y agregue una, por ejemplo que `order_id` nunca esté vacío, o que `amount` esté entre 0 y 100000. Las filas que no cumplen se apartan al agregar datos.
### Cargue el siguiente archivo [#cargue-el-siguiente-archivo]
Para una nueva versión de la hoja de cálculo, abra la tabla, elija **Agregar datos desde un archivo** y cómo se carga:
- **Agregar filas**: añade las filas nuevas.
- **Actualizar filas por clave**: compara filas por una columna como `order_id`, actualiza las que existen y agrega el resto.
- **Reemplazar todas las filas**: el archivo pasa a ser toda la tabla.
### Cargue el archivo [#cargue-el-archivo]
```python
from klarety import Nexus
nx = Nexus.connect()
run = nx.ingest("orders.csv", into="orders", schema="default")
print(run.run_id, run.state)
```
### Revise antes de cargar (opcional) [#revise-antes-de-cargar-opcional]
`ingest_preview` muestra lo que Klarety encontró en el archivo sin cargar nada:
```python
print(nx.ingest_preview("orders.csv", into="orders"))
```
### Espere a que termine [#espere-a-que-termine]
```python
status = nx.ingest_status(run.run_id)
print(status.state)
```
### Cargue el siguiente archivo por clave [#cargue-el-siguiente-archivo-por-clave]
```python
nx.ingest("orders_week2.csv", into="orders", mode="upsert", key=["order_id"])
```
`mode` es `auto`, `append`, `upsert` o `replace`. Un archivo que ya se cargó en una tabla se omite, salvo que pase `force=True`.
### O use la línea de comandos [#o-use-la-línea-de-comandos]
```bash
klarety ingest orders.csv --into orders
klarety ingest orders_week2.csv --into orders --mode upsert --key order_id
```
El archivo pasa a ser toda la tabla. Si lo elige por error, use el historial de la tabla para volver.
## Compruebe que funcionó [#compruebe-que-funcionó]
Abra la tabla desde **Nexus Lakehouse**; el encabezado muestra sus columnas y filas. Seleccione **Abrir en el editor SQL** y ejecute:
```sql
SELECT COUNT(*) FROM orders
```
```python
print(nx.sql("SELECT COUNT(*) AS n FROM orders").rows)
```
El conteo coincide con las filas de su archivo, menos las que apartó una validación. El historial de la tabla muestra cada carga, con las filas que agregó.
## Si algo sale mal [#si-algo-sale-mal]
El diálogo de carga muestra el límite de tamaño. Divida el archivo, o cárguelo desde código o una fuente conectada. Vea [Cargar datos](/docs/es/developers/ingest).
Una validación las apartó. El resumen de validaciones de la tabla muestra las filas escritas y apartadas en las cargas recientes.
Abra el historial de la tabla y vuelva a la versión anterior a la carga. Se deshace cada cambio posterior. Vea [Deshacer y restaurar](/docs/es/data/undo-and-restore).
## Siguientes pasos [#siguientes-pasos]
- [Hágale una pregunta a sus datos](/docs/es/guides/first-query): consulte la tabla que acaba de crear.
- [Tablas](/docs/es/data/tables): todo lo que puede hacer con una tabla.
- [Agregar datos](/docs/es/data/add-data): otras formas de traer datos.
- [Envíe un informe diario](/docs/es/guides/daily-report): resuma la tabla cada mañana.