I am not sure exactly what you mean by "a list of 10 elements" (note that a data frame is itself a list of vectors) but generally I think that you might want something like the "dcast" function --- depending on what exactly you are trying to do.
E.g., one interpretation is that there are 10 different kind of lego packs, but the list is actually a column much longer than that, with only 10 unique elements. And then you want a data frame with a column per lego pack type, but what do you want the rows to be?
There are two useful function to translate a column of with different kind of elements into a set of columns, one for each element type --- it is called dcast --- and another, called melt, that does exactly the opposite, basically unite a set of columns into a single one, duplicating each row by the number of columns. I found these two very useful and it seems that they may be relevant to what you need, but I need some more precise description of your input data and what you'd like to be in your output (e.g. what should be the rows of the new data frame with a column per element type?)