An immutable data frame works like an ordinary data
frame, except that when you subset it, it returns a
reference to the original data frame, not a a copy. This
makes subsetting substantially faster and has a big
impact when you are working with large datasets with many
groups.
This method is still a little experimental, so please let
me know if you run into any problems.