Criando uma tabela dinâmica

Suponha que eu tenha um conjunto de dados que se pareça com o seguinte, em que os anos são listados em linhas:

id<-c(1,1,1,2,2,2,3,3,3)
year<-c(1990, 1991, 1992, 1992, 1993, 1994, 1993, 1994, 1995)
N<-c(7,8,9,7,1,2,5,4,3)
dataset<-data.frame(cbind(id, year, N))

Eu gostaria de ter a saída parecida com a seguinte, com anos como cabeçalhos de coluna:

id   1990   1991   1992   1993   1994   1995
1    7      8      9      0      0      0
2    0      0      7      1      2      0        
3    0      0      0      5      4      3

Eu sei que este é um problema bastante fácil, mas eu tenho andado por aí com xtabs () e com melt () e cast (), mas não consigo acertar.

questionAnswers(3)

yourAnswerToTheQuestion