Línea de mejor ajuste: pendiente, intercepto y predicciones
Una línea de mejor ajuste resume la relación lineal entre observaciones numéricas emparejadas.
Ejecutar — gratis
Proporcione una matriz de valores x y otra matriz de valores y del mismo tamaño; la calculadora devolverá la pendiente por mínimos cuadrados ordinarios, el intercepto y un valor y predicho para cada x. Sirve para comprobar ejercicios, crear líneas de tendencia, validar cálculos de hojas de cálculo y automatizar resultados reproducibles. El cálculo es determinista, no consulta servicios externos y rechaza claramente las matrices de distinta longitud o una serie x sin variación.
Cómo se calcula la recta de ajuste
La calculadora ajusta una recta expresada como y predicha igual a pendiente por x más intercepto. Emplea mínimos cuadrados ordinarios, el método estándar que elige los coeficientes que minimizan la suma de las diferencias verticales al cuadrado entre los valores y observados y sus predicciones. Primero calcula la media aritmética de cada matriz. Después mide cuánto se separa cada x de su media y cómo cambia el valor y correspondiente respecto de la media de y. La suma de los productos de esas desviaciones se divide por la suma de las desviaciones cuadráticas de x para obtener la pendiente. El intercepto es la media de y menos la pendiente multiplicada por la media de x. Por último, sustituye cada x original en la ecuación y devuelve las predicciones en el mismo orden. Es una fórmula cerrada, no una aproximación iterativa, por lo que una entrada finita siempre produce el mismo resultado. Los valores atípicos pueden influir mucho porque el error se eleva al cuadrado.
Cómo preparar correctamente las matrices x e y
Introduzca x e y como matrices JSON que contengan únicamente números finitos. La posición establece cada pareja: la primera x corresponde a la primera y, y así sucesivamente. Ambas matrices deben tener la misma longitud y al menos dos valores. Conserve el orden si desea comparar las predicciones con las observaciones, pues la respuesta sigue exactamente la secuencia de x. Se admiten decimales, números negativos y cero. Debe limpiar antes los valores ausentes, cadenas numéricas, null, NaN e Infinity. La matriz x también necesita variación real. Si todos sus valores son iguales, el denominador de la fórmula de la pendiente es cero y no existe una función lineal finita de x. En ese caso se informa de una entrada no válida en lugar de ofrecer un cero, Infinity o NaN engañoso. Para mediciones enormes o con escalas extremas, puede cambiar las unidades para reducir las limitaciones habituales de la aritmética de coma flotante y facilitar la lectura de los coeficientes.
Cómo interpretar y utilizar los resultados
La pendiente indica cuánto cambia el valor y predicho cuando x aumenta una unidad. Una pendiente positiva señala una asociación ascendente; una negativa, una descendente; y una cercana a cero indica poco cambio lineal en el intervalo observado. El intercepto es la predicción de y cuando x vale cero. Puede tener sentido si cero está dentro o cerca de los datos, pero quizá sea solo un ancla matemática si queda muy lejos. La matriz predicted contiene el valor ajustado para cada x enviada y permite dibujar una tendencia, crear una tabla o calcular residuos restando cada predicción del valor y observado. Una recta de ajuste describe asociación, pero no demuestra que x cause cambios en y. Tampoco conviene extrapolar muy lejos sin conocimiento del contexto. Examine un diagrama de dispersión para detectar curvatura, grupos y valores atípicos influyentes. El cálculo en el navegador es gratuito; las solicitudes automatizadas a la API cuestan $0.002 por elemento.
Qué puede hacer con ella
Comprobar ejercicios de estadística
Verifique una pendiente y un intercepto calculados a mano y compare cada valor ajustado con su observación.
Crear una línea de tendencia
Genere predicciones en el orden original de x y represéntelas junto a los valores medidos.
Validar un proceso analítico
Use coeficientes y predicciones deterministas como datos de prueba para importaciones o informes.
Preguntas frecuentes
¿Qué significa línea de mejor ajuste?
Es la recta que minimiza la suma de las diferencias verticales al cuadrado entre y observada e y predicha.
¿Por qué x e y deben tener la misma longitud?
Cada posición representa una observación emparejada; un valor sin pareja no puede participar en el cálculo.
¿Por qué una x constante produce un error?
Si todos los valores x son iguales, su varianza es cero y la fórmula divide por cero; no existe una pendiente finita.
¿Las predicciones conservan el orden de entrada?
Sí. Cada predicción corresponde al valor x que ocupa el mismo índice.
¿Cuánto cuesta un cálculo por API?
Cada solicitud correcta cuesta $0.002 por elemento. La calculadora del navegador ejecuta gratis el mismo cálculo determinista.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/stat/line-of-best-fit \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"x":[1,2,3,4,5],"y":[2,4,5,4,5]}'const res = await fetch("https://api.kit.forhosting.com/stat/line-of-best-fit", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"x": [
1,
2,
3,
4,
5
],
"y": [
2,
4,
5,
4,
5
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/line-of-best-fit",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"x": [
1,
2,
3,
4,
5
],
"y": [
2,
4,
5,
4,
5
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/line-of-best-fit", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"x":[1,2,3,4,5],"y":[2,4,5,4,5]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"x":[1,2,3,4,5],"y":[2,4,5,4,5]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/line-of-best-fit", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"x": [
1,
2,
3,
4,
5
],
"y": [
2,
4,
5,
4,
5
]
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.line_of_best_fit",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_items | 100000 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |