示例#1
0
def process_relation(
        items: Union[dict, Type[VisionsBaseType]]) -> IdentityRelation:
    if isinstance(items, dict):
        return IdentityRelation(**items)
    elif issubclass(items, VisionsBaseType):
        return IdentityRelation(related_type=items)
    else:
        raise TypeError(
            "identity should be a list, a dict of params or related_type.")
示例#2
0
 def get_relations(cls) -> Sequence[TypeRelation]:
     relations = [
         IdentityRelation(cls, Generic),
         InferenceRelation(cls, String),
         InferenceRelation(cls, Object),
     ]
     return relations
示例#3
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import Generic, String, Integer, Object

    relations = [
        IdentityRelation(cls, Generic),
        InferenceRelation(
            cls,
            String,
            relationship=lambda s: coercion_map_test(cls.string_coercions)
            (s.str.lower()),
            transformer=lambda s: to_bool(
                coercion_map(cls.string_coercions)(s.str.lower())),
        ),
        InferenceRelation(
            cls,
            Integer,
            relationship=lambda s: s.isin({0, 1, np.nan}).all(),
            transformer=to_bool,
        ),
        InferenceRelation(
            cls,
            Object,
            relationship=lambda s: s.apply(type).isin([type(None), bool]).all(
            ),
            transformer=to_bool,
        ),
    ]
    return relations
示例#4
0
 def get_relations(cls):
     return [
         IdentityRelation(cls, Unsupported),
         # TODO: optional
         # TODO: coerce
         # InferenceRelation(cls, Categorical, relationship=is_date, transformer=to_date),
     ]
示例#5
0
def _get_relations(cls) -> List[TypeRelation]:
    from visions.types import Generic, Float

    relations = [
        IdentityRelation(cls, Generic),
        InferenceRelation(cls, Float, relationship=float_is_int, transformer=to_int),
    ]
    return relations
示例#6
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import String, Object

    relations = [
        IdentityRelation(cls, Object),
        InferenceRelation(cls, String, relationship=test_uuid, transformer=to_uuid),
    ]
    return relations
示例#7
0
 def get_relations():
     return [
         IdentityRelation(Unsupported),
         InferenceRelation(
             Numeric,
             relationship=numeric_is_category,
             transformer=to_category,
         ),
     ]
示例#8
0
 def get_relations():
     return [
         IdentityRelation(Unsupported),
         InferenceRelation(
             Categorical,
             relationship=category_is_numeric,
             transformer=category_to_numeric,
         ),
     ]
示例#9
0
文件: date.py 项目: dah33/visions
 def get_relations(cls) -> Sequence[TypeRelation]:
     relations = [
         IdentityRelation(cls, Object),
         InferenceRelation(
             cls,
             DateTime,
         ),
     ]
     return relations
示例#10
0
 def get_relations(cls) -> Sequence[TypeRelation]:
     relations = [
         IdentityRelation(cls, Generic),
         InferenceRelation(
             cls,
             Float,
         ),
     ]
     return relations
示例#11
0
 def get_relations():
     # Numeric [0, 1] goes via Categorical with distinct_count_without_nan <= 2
     return [
         IdentityRelation(Unsupported),
         InferenceRelation(
             Categorical,
             relationship=string_is_bool,
             transformer=lambda s, st: to_bool(string_to_bool(s, st)),
         ),
     ]
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import Object, String

    relations = [
        IdentityRelation(cls, Object),
        InferenceRelation(
            cls, String, relationship=string_is_geometry, transformer=to_geometry
        ),
    ]
    return relations
示例#13
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import Generic, String

    relations = [
        IdentityRelation(cls, Generic),
        InferenceRelation(
            cls, String, relationship=test_string_is_complex, transformer=to_complex
        ),
    ]
    return relations
示例#14
0
 def get_relations() -> Sequence[TypeRelation]:
     return [
         IdentityRelation(Unsupported),
         InferenceRelation(
             Categorical,
             relationship=lambda x, y: partial(category_is_numeric,
                                               k=config)(x, y),
             transformer=category_to_numeric,
         ),
     ]
示例#15
0
 def get_relations() -> Sequence[TypeRelation]:
     return [
         IdentityRelation(Unsupported),
         InferenceRelation(
             Numeric,
             relationship=lambda x, y: partial(numeric_is_category,
                                               k=config)(x, y),
             transformer=to_category,
         ),
     ]
示例#16
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import Object, String

    relations = [
        IdentityRelation(cls, Object),
        InferenceRelation(cls,
                          String,
                          relationship=test_utils.coercion_test(to_ip),
                          transformer=to_ip),
    ]
    return relations
示例#17
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import DateTime, Object

    relations = [
        IdentityRelation(cls, Object),
        InferenceRelation(
            cls,
            DateTime,
            relationship=test_utils.coercion_test(test_date),
            transformer=to_date,
        ),
    ]
    return relations
示例#18
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import Generic, String

    relations = [
        IdentityRelation(cls, Generic),
        InferenceRelation(
            cls,
            String,
            relationship=test_utils.coercion_test(to_datetime),
            transformer=to_datetime,
        ),
    ]
    return relations
示例#19
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import DateTime, Object

    relations = [
        IdentityRelation(cls, Object),
        InferenceRelation(
            cls,
            DateTime,
            relationship=datetime_is_date,
            transformer=to_date,
        ),
    ]
    return relations
示例#20
0
        def get_relations() -> Sequence[TypeRelation]:
            # Numeric [0, 1] goes via Categorical with distinct_count_without_nan <= 2
            mapping = config.vars.bool.mappings

            return [
                IdentityRelation(Unsupported),
                InferenceRelation(
                    Categorical,
                    relationship=lambda x, y: partial(string_is_bool, k=mapping)(x, y),
                    transformer=lambda s, st: to_bool(
                        partial(string_to_bool, k=mapping)(s, st)
                    ),
                ),
            ]
示例#21
0
文件: integer.py 项目: e-zl/visions
def _get_relations(cls) -> List[TypeRelation]:
    from visions.types import String, Generic, Float

    relations = [
        IdentityRelation(cls, Generic),
        InferenceRelation(cls,
                          Float,
                          relationship=float_is_int,
                          transformer=to_int),
        InferenceRelation(
            cls,
            String,
            relationship=test_utils.coercion_test(to_int),
            transformer=to_int,
        ),
    ]
    return relations
示例#22
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import Complex, Generic, String

    relations = [
        IdentityRelation(cls, Generic),
        InferenceRelation(cls,
                          String,
                          relationship=string_is_float,
                          transformer=string_to_float),
        InferenceRelation(
            cls,
            Complex,
            relationship=complex_is_float,
            transformer=complex_to_float,
        ),
    ]
    return relations
示例#23
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import Generic, String, Complex

    relations = [
        IdentityRelation(cls, Generic),
        InferenceRelation(cls,
                          String,
                          relationship=test_string_is_float,
                          transformer=to_float),
        InferenceRelation(
            cls,
            Complex,
            relationship=lambda s: all(np.imag(s.values) == 0),
            transformer=suppress_warnings(to_float),
        ),
    ]
    return relations
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import Generic, Object, String

    relations = [
        IdentityRelation(cls, Generic),
        InferenceRelation(
            cls,
            String,
            relationship=partial(string_is_bool,
                                 string_coercions=cls.string_coercions),
            transformer=partial(string_to_bool,
                                string_coercions=cls.string_coercions),
        ),
        InferenceRelation(cls,
                          Object,
                          relationship=object_is_bool,
                          transformer=to_bool),
    ]
    return relations
示例#25
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import Generic, Object, String

    relations = [
        IdentityRelation(cls, Generic),
        InferenceRelation(
            cls,
            String,
            relationship=lambda s: coercion_map_test(cls.string_coercions)
            (s.str.lower()),
            transformer=lambda s: to_bool(
                coercion_map(cls.string_coercions)(s.str.lower())),
        ),
        InferenceRelation(cls,
                          Object,
                          relationship=object_is_bool,
                          transformer=to_bool),
    ]
    return relations
示例#26
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import Generic

    relations = [IdentityRelation(cls, Generic)]
    return relations
示例#27
0
 def get_relations() -> Sequence[TypeRelation]:
     relations = [IdentityRelation(Integer)]
     return relations
示例#28
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    relations = [IdentityRelation(cls, Generic)]
    return relations
示例#29
0
def _get_relations(cls) -> Sequence[TypeRelation]:
    from visions.types import Path

    relations = [IdentityRelation(cls, Path)]
    return relations
示例#30
0
 def get_relations() -> Sequence[TypeRelation]:
     relations = [
         IdentityRelation(Object),
         InferenceRelation(String),
     ]
     return relations