Yes, the biggest thing is the removal of the groups and re-concatenation.

The thing that is hard to read about the groupBy approach is actually that you have to know what true and false mean and those semantics can easily change.  With the code change, you can look at the filter function and see all of the processing that is happening.  

1. It checks if it's a known type
2. If it is, it runs a type-specific filtering function to see if the event should be included.
3. It increments a value in a histogram about whether the type was included or not.

Actually, after writing that, I think it could be even simpler:

``` javascript
function(d) {
      var includeFn = TYPES_TO_INCLUDE[d.type];

      var retVal;
      if (includeFn == null) {
        retVal = null;
      } else {
        retVal = includeFn(d);
      }

      incrementCount(retVal ? 'included' : 'excluded', d.type);
      return retVal;
    }
```