Transformando data.frame em R

Eu tenho o seguinte quadro de dados:

foo <- data.frame( abs( cbind(rnorm(3),rnorm(3, mean=.8),rnorm(3, mean=.9),rnorm(3, mean=1))))
colnames(foo) <- c("w","x","y","z")
rownames(foo) <- c("n","q","r")
foo
#            w         x         y         z
# n 1.51550092 1.4337572 1.2791624 1.1771230
# q 0.09977303 0.8173761 1.6123402 0.1510737
# r 1.17083866 1.2469347 0.8712135 0.8488029

O que eu quero fazer é mudá-lo para:

newdf
# 1     n    w 1.51550092
# 2     q    w 0.09977303
# 3     r    w 1.17083866
# 4     n    x 1.43375725
# 5     q    x 0.81737606
# 6     r    x 1.24693468
# 7     n    y 1.27916241
# 8     q    y 1.61234016
# 9     r    y 0.87121353
# 10    n    z 1.17712302
# 11    q    z 0.15107369
# 12    r    z 0.84880292

Qual é o caminho para fazer isso?

questionAnswers(2)

yourAnswerToTheQuestion