title: How to create all interaction variables between 2 groups of features with sklearn transformers?
body: <p>Say I have a DataFrame <code>df</code> with 5 columns, <code>['a', 'b', 'c', 'd', 'e']</code>.</p>
  <p>What's the most natural way, using scikit-learn transformers, to create the 6 interactions between one feature amongst <code>['a', 'b', 'c']</code> and one of <code>['d', 'e']</code> (namely <code>df['a'] * df['d']</code>, <code>df['a] * df['e']</code>, <code>df['b'] * df['d']</code>, etc.) ?</p>
  <p>I'd like to avoid using a FunctionTransformer as I need to pickle a Pipeline containing this step.</p>