¿Cómo remodelar los datos de formato largo a ancho?

Tengo problemas para reorganizar el siguiente marco de datos:

set.seed(45)
dat1 <- data.frame(
    name = rep(c("firstName", "secondName"), each=4),
    numbers = rep(1:4, 2),
    value = rnorm(8)
    )

dat1
       name  numbers      value
1  firstName       1  0.3407997
2  firstName       2 -0.7033403
3  firstName       3 -0.3795377
4  firstName       4 -0.7460474
5 secondName       1 -0.8981073
6 secondName       2 -0.3347941
7 secondName       3 -0.5013782
8 secondName       4 -0.1745357

Quiero remodelarlo para que cada variable única de "nombre" sea un nombre de fila, con los "valores" como observaciones a lo largo de esa fila y los "números" como colnames. Más o menos así:

     name          1          2          3         4
1  firstName  0.3407997 -0.7033403 -0.3795377 -0.7460474
5 secondName -0.8981073 -0.3347941 -0.5013782 -0.1745357

He mirado amelt ycast y algunas otras cosas, pero ninguna parece hacer el trabajo.

Respuestas a la pregunta(9)

Su respuesta a la pregunta