/// <summary> /// Create a <see cref="CategoricalImputerEstimator"/>, which fills in the missing values in a column with the most frequent value. /// Supports Floats, Doubles, and Strings. /// A string is assumed "missing" if it is empty. /// </summary> /// <param name="catalog">Transform Catalog</param> /// <param name="columns">List of <see cref="InputOutputColumnPair"/> to fill in missing values</param> /// <returns><see cref="CategoricalImputerEstimator"/></returns> public static CategoricalImputerEstimator ImputeCategories(this TransformsCatalog catalog, params InputOutputColumnPair[] columns) { var options = new CategoricalImputerEstimator.Options { Columns = columns.Select(x => new CategoricalImputerEstimator.Column { Name = x.OutputColumnName, Source = x.InputColumnName ?? x.OutputColumnName }).ToArray(), }; return(new CategoricalImputerEstimator(CatalogUtils.GetEnvironment(catalog), options)); }
/// <summary> /// Create a <see cref="CategoricalImputerEstimator"/>, which fills in the missing values in a column with the most frequent value. /// Supports Floats, Doubles, and Strings. /// A string is assumed "missing" if it is empty. /// </summary> /// <param name="catalog">Transform Catalog</param> /// <param name="outputColumnName">Output column name</param> /// <param name="inputColumnName">Input column name, if null defaults to <paramref name="outputColumnName"/></param> /// <returns><see cref="CategoricalImputerEstimator"/></returns> public static CategoricalImputerEstimator ImputeCategories(this TransformsCatalog catalog, string outputColumnName, string inputColumnName = null) { var options = new CategoricalImputerEstimator.Options { Columns = new CategoricalImputerEstimator.Column[1] { new CategoricalImputerEstimator.Column() { Name = outputColumnName, Source = inputColumnName ?? outputColumnName } } }; return(new CategoricalImputerEstimator(CatalogUtils.GetEnvironment(catalog), options)); }
public static CommonOutputs.TransformOutput ImputeToKey(IHostEnvironment env, CategoricalImputerEstimator.Options input) { var h = EntryPointUtils.CheckArgsAndCreateHost(env, CategoricalImputerTransformer.ShortName, input); var xf = new CategoricalImputerEstimator(h, input).Fit(input.Data).Transform(input.Data); return(new CommonOutputs.TransformOutput() { Model = new TransformModelImpl(h, xf, input.Data), OutputData = xf }); }