Quiero un código simple en R para realizar una regresión lineal mínima a error cuadrático (RLEC) utilizando la variable de interés "edad" y la variable independiente "ingresos". La variable dependiente es "estado civil", que tiene tres niveles posibles: casado, soltero e infiel. El código debe permitir realizar una regresión separada para cada nivel del estado civil.
 Para resolver este problema en R, puedes utilizar el paquete `broom` junto con la función `lm()` para realizar múltiples modelos de regresión lineal por grupos basados en el estado civil. A continuación, te muestro un ejemplo de cómo podrías estructurar tu código:

```R
# Cargamos los paquetes necesarios
if (!require("broom")) install.packages("broom")
library(broom)

# Supongamos que tenemos una data frame llamado 'datos' con las variables de interés
# Asumimos el siguiente formato para la estructura del dataframe (añade tu propio dataset):
# 
# datos <- data.frame(
#   edad = c(...),  # Edades
#   ingresos = c(...),  # Ingresos
#   estado_civil = factor(c(...), levels = c("casado", "soltero", "infiel"))  # Estado civil
# )

# Ajustamos un modelo de regresión por grupo (estado civil) utilizando la función lm() y el paquete broom
modelos_regresion <- by(datos, datos$estado_civil, function(subdata) {
  # Crear el modelo de regresión lineal para este subgrupo específico
  modelo_linalg <- lm(estado_civil ~ edad + ingresos, data = subdata)
  
  # Vamos a extraer la información en forma de tibble para un análisis más fácil
  tibble::tibble(
    estado_civil = names(coef(modelo_linalg)),  # Coeficientes como un tibble por grupo
    coefs = tidy(modelo_linalg)
  )
})

# Imprimimos los resultados de la regresión para cada grupo (estado civil)
print(models_regresion)
```

Este código asume que tienes un dataframe `datos` con las columnas "edad", "ingresos" y "estado_civil". El uso del paquete `broom::tibble()` permite extraer los coeficientes de cada modelo en forma de tibble, lo cual facilita la visualización y análisis posterior.

Recuerda ajustar los nombres de las columnas y el dataframe según corresponda con tus datos reales.