@keyword_only<EOL><INDENT>def __init__(self, sklearnEstimator=None, keyCols=None, xCol=None, outputCol=None, yCol=None,<EOL>estimatorType=None, keyedSklearnEstimators=None, outputType=None):<DEDENT>
assert (estimatorType == "<STR_LIT>") == (yCol is not None),"<STR_LIT>".format(<EOL>yCol, "<STR_LIT>" if isLabelled else "<STR_LIT>", estimatorType)<EOL>assert estimatorType in ["<STR_LIT>", "<STR_LIT>", "<STR_LIT>"], estimatorType<EOL>def implies(a, b):<EOL><INDENT>return not a or b<EOL><DEDENT>assert implies(estimatorType == "<STR_LIT>", outputType == Vector.__UDT__), outputType<EOL>assert implies(estimatorType == "<STR_LIT>", outputType == LongType()), outputType<EOL>assert len(keyCols) > <NUM_LIT:0>, len(keyCols)<EOL>assert set(keyedSklearnEstimators.columns) == (set(keyCols) | {"<STR_LIT>"}),"<STR_LIT>" +"<STR_LIT>".format(keyedSklearnEstimators.columns, keyCols)<EOL>for paramName, paramSpec in KeyedModel._paramSpecs.items():<EOL><INDENT>setattr(self, paramName, Param(Params._dummy(), paramName, paramSpec["<STR_LIT>"]))<EOL><DEDENT>super(KeyedModel, self).__init__()<EOL>if yCol and type(outputType) not in KeyedModel._sql_types:<EOL><INDENT>raise TypeError("<STR_LIT>"<EOL>.format(outputType, estimatorType))<EOL><DEDENT>self._set(**self._input_kwargs)<EOL>
The constructor is used by :class:`KeyedEstimator` to generate a :class:`KeyedModel`; it
        is not intended for external use.