¿Por qué no predice como las dimensiones de mis nuevos datos?

Quiero realizar una regresión múltiple en R y hacer predicciones basadas en el modelo entrenado. A continuación se muestra un código de ejemplo que estoy usando:

price = c(10,18,18,11,17)
predictors = cbind(c(5,6,3,4,5),c(2,1,8,5,6))
predict(lm(price ~ predictors), data.frame(predictors=matrix(c(3,5),nrow=1)))

Entonces, basado en el modelo de regresión de 2 variables entrenado por 5 muestras, quiero hacer una predicción para el punto de datos de prueba donde la primera variable es 3 y la segunda variable es 5. Pero recibo una advertencia del código anterior que dice que'newdata' had 1 rows but variable(s) found have 5 rows. ¿Cómo puedo corregir el código anterior? El siguiente código funciona bien donde doy las variables por separado a la fórmula del modelo. Pero como tendré cientos de variantes, tengo que darlas en una matriz, ya que sería inviable agregar cientos de columnas usando+ firmar.

price = c(10,18,18,11,17)
predictor1 = c(5,6,3,4,5)
predictor2 = c(2,1,8,5,6)
predict(lm(price ~ predictor1 + predictor2), data.frame(predictor1=3,predictor2=5))

¡Gracias por adelantado!

Respuestas a la pregunta(2)

Su respuesta a la pregunta