¿Cuál es la forma correcta de multiplicar el cuadro de datos por el vector?

Estoy tratando de multiplicar un marco de datosdf por un vectorv, para que el producto sea un marco de datos, donde eli-la fila está dada pordf[i,]*v. Puedo hacer esto, por ejemplo, por

df <- data.frame(A=1:5, B=2:6); v <- c(0,2)
as.data.frame(t(t(df) * v))
   A  B
1  0  4
2  0  6
3  0  8
4  0 10
5  0 12

Estoy seguro de que tiene que haber másEstilo r enfoque (y uno muy simple!), pero nada me viene a la mente. Incluso intenté algo como

apply(df, MARGIN=1, function(x) x*v)

Pero aún así, construcciones no legibles comoas.data.frame(t(.)) son requeridos.
¿Cómo puedo encontrar una solución eficiente y elegante aquí?

Respuestas a la pregunta(6)

Su respuesta a la pregunta