Como usar o LINQ para selecionar um objeto?

Eu tenho dados assim:

UserId   |  SongId
--------   --------
1          1
1          4
1          12
2          95

Eu também tenho a seguinte classe:

class SongsForUser
{
    public int User;
    public List<int> Songs;
}

O que eu gostaria de fazer é usar o LINQ para selecionar meus dados para criar uma coleção de objetos SongsForUser. Abaixo está o que eu tenho até agora:

var userCombos = songs.UserSongs.Select(x => new SongsForUser() { User = x.UserId, 
                                                                  Songs = /*What goes here?*/ });

Como eu iria preencher meuSongs&nbsp;Lista?

Portanto, o resultado deve ser dois objetos SongsForUser. Para usuário1&nbsp;teria 3 itens noSongs&nbsp;Lista. Para usuário2&nbsp;ele teria 1 item noSongs&nbsp;Lista.