class ColumnApplier(object):

    def __init__(self, column_stages):
        self._column_stages = column_stages

def fit(self, X, y):
    for i, k in list(self._column_stages.items()):
        k.fit(X[:, (i)])
return self

def transform(self, X):
    pass
scikit-learn: One hot encoding of string categorical features