Compilador Python online con pandas
Escribe código pandas abajo y ejecútalo gratis, en un sandbox en nuestros servidores. Pega un CSV en la pestaña Entrada y léelo con pd.read_csv. NumPy, Matplotlib, seaborn y scikit-learn también están instalados. Sin registro, sin anuncios.
Also in EnglishTambém em português
import sys
import pandas as pd
# Lee el CSV de la pestaña Entrada
df = pd.read_csv(sys.stdin)
print(df.groupby("ciudad")["ventas"].sum().sort_values(ascending=False))
print()
print(df["ventas"].describe().round(1)) ciudad,mes,ventas Lima,ene,120 Lima,feb,135 Bogotá,ene,180 Bogotá,feb,160 Quito,ene,95 Quito,feb,110 Ciudad de México,ene,210 Ciudad de México,feb,190
Pulsa Ejecutar y el programa muestra las ventas por ciudad y luego un resumen de la columna de ventas:
ciudad
Ciudad de México 400
Bogotá 340
Lima 255
Quito 205
Name: ventas, dtype: int64
count 8.0
mean 150.0
std 41.3
min 95.0
25% 117.5
50% 147.5
75% 182.5
max 210.0
Name: ventas, dtype: float64Qué ejecuta tu código pandas
Python 3.14 con pandas 3.0.6. Estos paquetes ya vienen instalados, sin configurar nada: numpy 2.5.4, pandas 3.0.6, scipy 1.18.1, scikit-learn 1.9.1, matplotlib 3.11.2, seaborn 0.13.2, statsmodels 0.15.0, sympy 1.14.0, openpyxl 3.1.5, pillow 13.0.0, duckdb 1.5.6, wordcloud 1.9.6, polars 2.1.0, pgmpy 1.1.2, nltk 3.10.4. Las versiones también están en la tabla de paquetes (en inglés). Otros paquetes de PyPI no están instalados, y no hay red para instalarlos.
Usa tus datos o un conjunto ya instalado
Pega un CSV en la pestaña Entrada, hasta 100 KB, y léelo con pd.read_csv(sys.stdin),
como hace el programa de arriba. Algunos conjuntos de datos ya están instalados y cargan sin internet: los 22
conjuntos de ejemplo de seaborn, con sns.load_dataset, los de scikit-learn (load_iris, load_digits, load_wine, load_breast_cancer, load_diabetes) y los
que vienen con statsmodels.
import seaborn as sns
from sklearn.datasets import load_iris
propinas = sns.load_dataset("tips") # uno de los 22 conjuntos de ejemplo de seaborn
iris = load_iris(as_frame=True).frame # conjuntos que vienen con scikit-learn
print(propinas.shape, iris.shape)Con la API puedes enviar hasta 20 archivos en una ejecución, 1 MB en total, y leer cada uno por su nombre (mira el ejemplo de abajo).
pandas 2 y pandas 3
pandas 3 cambió algunos valores por defecto: las columnas de texto reciben un nuevo dtype de cadena, y el
copy-on-write queda siempre activo, así que el código que modifica una parte de un DataFrame puede comportarse
distinto. Para código o ejercicios escritos para pandas 2, la API tiene un segundo entorno, python-3.14-pandas2, con pandas 2.3.3 y los mismos otros paquetes. El editor de esta página
ejecuta pandas 3.0.6.
Comprueba una respuesta automáticamente
El compilador online con casos de prueba ejecuta tu código con varias entradas y marca cada una como aprobada o fallida. Para una respuesta en tabla, imprime el DataFrame como CSV y elige "Tabla CSV, filas en cualquier orden": compara las columnas por su nombre, ignora el orden de las filas y la columna de índice de pandas, y compara números con una pequeña tolerancia:
totales = df.groupby("ciudad", as_index=False)["ventas"].sum()
print(totales.to_csv(index=False))Límites
- Cada ejecución tiene 30 segundos, 512 MB de memoria (hasta 2 GB por la API en los planes Pro y Business) y 2 CPUs, y empieza de cero: nada se guarda entre ejecuciones.
- No hay red, así que
pd.read_csvde una URL,pip instally los cargadoresfetch_*de scikit-learn fallan. - La salida por encima de 64 KB por flujo se corta, así que imprime un resumen en vez de un DataFrame grande entero.
Ejecuta pandas desde tu app
Envía el código y los archivos de datos a la API con una clave, y la salida vuelve en la respuesta. Es gratis hasta 100,000 ejecuciones al mes.
curl -X POST https://api.onlinecompiler.io/api/run-code-sync/ \
-H "Authorization: TU_CLAVE_DE_API" \
-H "Content-Type: application/json" \
-d '{
"compiler": "python-3.14",
"code": "import pandas as pd\n\ndf = pd.read_csv(\"datos.csv\")\nprint(df.groupby(\"ciudad\")[\"ventas\"].sum().to_dict())",
"files": [
{"name": "datos.csv", "content": "ciudad,ventas\nLima,120\nLima,135\nBogotá,180\n"}
]
}'El output de la respuesta es "{'Bogotá': 180, 'Lima': 255}\n". Las gráficas que
muestra el programa vuelven en files; la documentación de la
API explica ambos.
Más para trabajar con datos
- Compilador Python online: Python con entrada, y el mismo Matplotlib para gráficas.
- Machine learning online compiler (en inglés): modelos de scikit-learn.
Preguntas frecuentes
¿Este compilador Python con pandas es gratis?
Sí. Ejecutar pandas en esta página no pide cuenta y no muestra anuncios. Para ejecutar pandas desde tu propia app o sitio, la API y el editor incrustable son gratis hasta 100,000 ejecuciones al mes, uso comercial incluido.
¿Qué versión de pandas ejecuta?
pandas 3.0.6 sobre Python 3.14, con numpy 2.5.4, pandas 3.0.6, scipy 1.18.1, scikit-learn 1.9.1, matplotlib 3.11.2, seaborn 0.13.2, statsmodels 0.15.0, sympy 1.14.0, openpyxl 3.1.5, pillow 13.0.0, duckdb 1.5.6, wordcloud 1.9.6, polars 2.1.0, pgmpy 1.1.2, nltk 3.10.4. Para código escrito para pandas 2, la API tiene el id python-3.14-pandas2, que ejecuta pandas 2.3.3.
¿Puedo usar mi propio archivo CSV?
Sí. Pega el CSV en la pestaña Entrada (hasta 100 KB) y léelo con pd.read_csv(sys.stdin). Con la API puedes enviar hasta 20 archivos, 1 MB en total, y leer cada uno por su nombre, como pd.read_csv("datos.csv").
¿Por qué falla read_csv con una URL?
Los programas se ejecutan sin acceso a la red, así que pd.read_csv("https://...") se detiene con URLError: Temporary failure in name resolution. Pega los datos en la pestaña Entrada, envíalos como archivo con la API o usa un conjunto de datos ya instalado, como sns.load_dataset("tips").
¿Puedo ejecutar código de pandas 2?
Sí, con la API: envía el id python-3.14-pandas2 y el código se ejecuta en pandas 2.3.3 con los mismos otros paquetes. El editor de esta página ejecuta pandas 3.0.6.
¿Puedo graficar un DataFrame?
Sí. Matplotlib y seaborn están instalados: llama a df.plot() y luego a plt.show(), y la gráfica aparece como imagen debajo de la salida.