Remodelar dados longos para amplos - entender os parâmetros de remodelagem

Eu tenho um formato longo dataframe cães que estou tentando reformatar para amplo usando a função reshape (). Atualmente, parece assim:

dogid  month  year  trainingtype  home  school  timeincomp
12345  1      2014  1             1     1       340
12345  2      2014  1             1     1       360
31323  12     2015  2             7     3       440
31323  1      2014  1             7     3       500
31323  2      2014  1             7     3       520

A coluna dogid é um monte de ids, um para cada cão. A coluna do mês varia de 1 a 12 para os 12 meses e o ano de 2014 a 2015. O tipo de treinamento varia de 1 a 2. Cada cão tem um valor de compasso de tempo para cada combinação de mês-ano-tipo de treinamento, portanto, 48 entradas por cão. A casa e a escola variam de 1 a 8 e são constantes por cão (todas as entradas para o mesmo cachorro têm a mesma escola e casa). Tempo em comp é a minha variável de resposta.

Gostaria que minha mesa ficasse assim:

dogid  home  school  month1year2014trainingtype1  month2year2014trainingtype1
12345  1     1       340                          360
31323  7     3       500                          520

etc. (com colunas para cada combinação mês-ano-tipo de treinamento)

Quais parâmetros devo usar na remodelagem para conseguir isso?

questionAnswers(3)

yourAnswerToTheQuestion