<jupyter_start><jupyter_text>02. Machine Learning & Regresion Lineal     Resolver dudas → Pregunta en  Discord    Tutoriales →  YouTube    Reservar Clases → @ sotastica  Cargar Datos > Si ejecutamos los siguientes comandos:```pythonimport seaborn as snssns.get_dataset_names()```> Veremos una lista de posibles `datasets` que podemos descargar desde internet y convertirlos directamente a un `DataFrame` de `pandas`. Por ejemplo:```pythonsns.load_dataset(name='car_crashes')```<jupyter_code>import seaborn as sns
sns.get_dataset_names()
df = sns.load_dataset(name='car_crashes')
df<jupyter_output><empty_output><jupyter_text>Seleccionar 2 Variables para la Regresión > - Variable Objetivo `y`> - Variable Explicativa `X`<jupyter_code>y = df.total
x = df[['alcohol']]<jupyter_output><empty_output><jupyter_text>Scatterplot con las Variables > Deberíamos observar en la gráfica que los puntos podrían relacionarse a través de una línea que los cruce.>> Si no es así, debemos seleccionar otras variables.<jupyter_code>sns.scatterplot(x='alcohol', y='total', data = df)<jupyter_output><empty_output><jupyter_text>Modelo de Regresión Lineal `LinearRegression()`  Entrenar Modelo > 1. **Necesidad:** Entrenar Modelo> 2. **Solución: Función** `fit()`<jupyter_code>from sklearn.linear_model import LinearRegression
model = LinearRegression()
model.fit(x, y)
model.__dict__<jupyter_output><empty_output><jupyter_text>Realizar Predicciones > - `model.predict()`<jupyter_code>model.predict([[3]])
5.85 + 2.0325063*3
pred = model.predict(x)
dfsel = df[['alcohol', 'total']].copy()
dfsel['pred'] = pred<jupyter_output><empty_output><jupyter_text>Visualizar Modelo > 1. Los **datos reales**.> 2. **Modelo: las predicciones** con la ecuación matemática.<jupyter_code>dfsel
dfsel.sample(10)
sns.scatterplot(x='alcohol', y='total', data = df)
dfsel.head()
sns.scatterplot(x='alcohol', y='total', data = df)
sns.scatterplot(x='alcohol', y='pred', data = dfsel)<jupyter_output><empty_output><jupyter_text>Interpretar Modelo > 1. Especifica la **Fórmula Matemática** del Modelo.> 2. **Interpreta los Coeficientes** de la Ecuación Matemática.<jupyter_code>5.85 + 2.0325063*x<jupyter_output><empty_output><jupyter_text>Realidad vs Predicciones > ¿Cómo de bueno es nuestro modelo?>> 1. Si pasamos las predicciones como una nuevo columna del `DataFrame`, podremos observar que **las predicciones de nuestro modelo pueden no coincidir con la realidad**.>>    - `df['pred'] = predicciones`>> 2. ¿Cómo medimos el **error de nuestro modelo**? ¿Cómo de bueno es nuestro modelo para describir la realidad?>    - `df.sample(10)` para comprobar si las predicciones de nuestro modelo coinciden con la realidad...<jupyter_code>df['pred'] = predicciones
df.sample(10)<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.12599565532223025, 'fraction_numerical': 0.014844315713251267, 'mean_word_length': 6.985549132947977, 'pattern_counts': {'":': 0, '<': 33, '<?xml version=': 0, '>': 55, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '8', 'dir': 'jupyter-structured-clean-dedup', 'id': '650563', 'license': 'MIT', 'n_tokens_mistral': 1036, 'n_tokens_neox': 1014, 'n_words': 247, 'path': 'past program/#02. Machine Learning & Regresion Lineal/Notebooks/tarea02.ipynb', 'repo_name': 'Nica7/machine-learning-program', 'size': '2762'}