Ejemplo n.º 1
0
            private ColInfo[] CreateInfos(Schema inputSchema)
            {
                Host.AssertValue(inputSchema);
                var infos = new ColInfo[_parent.ColumnPairs.Length];

                for (int i = 0; i < _parent.ColumnPairs.Length; i++)
                {
                    if (!inputSchema.TryGetColumnIndex(_parent.ColumnPairs[i].input, out int colSrc))
                    {
                        throw Host.ExceptSchemaMismatch(nameof(inputSchema), "input", _parent.ColumnPairs[i].input);
                    }
                    _parent.CheckInputColumn(inputSchema, i, colSrc);
                    var        inType = inputSchema.GetColumnType(colSrc);
                    ColumnType outType;
                    if (!inType.IsVector)
                    {
                        outType = BoolType.Instance;
                    }
                    else
                    {
                        outType = new VectorType(BoolType.Instance, inType.AsVector);
                    }
                    infos[i] = new ColInfo(_parent.ColumnPairs[i].input, _parent.ColumnPairs[i].output, inType, outType);
                }
                return(infos);
            }
            private ColInfo[] CreateInfos(DataViewSchema inputSchema)
            {
                Host.AssertValue(inputSchema);
                var infos = new ColInfo[_parent.ColumnPairs.Length];

                for (int i = 0; i < _parent.ColumnPairs.Length; i++)
                {
                    if (!inputSchema.TryGetColumnIndex(_parent.ColumnPairs[i].inputColumnName, out int colSrc))
                    {
                        throw Host.ExceptSchemaMismatch(nameof(inputSchema), "input", _parent.ColumnPairs[i].inputColumnName);
                    }
                    _parent.CheckInputColumn(inputSchema, i, colSrc);
                    var          inType = inputSchema[colSrc].Type;
                    DataViewType outType;
                    if (!(inType is VectorDataViewType vectorType))
                    {
                        outType = BooleanDataViewType.Instance;
                    }