G-Node / G-Node/python-odml

Convenience functions for filtering

Abierto
#128 0 comentarios 0 reacciones 0 asignados Ver en GitHub
v1.4
Lenguaje dominante
Python
Estrellas
25
Forks
30
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Currently it is possible to filter for specific odML objects using the iter-functions with a lambda function, e.g.:
```
odmldoc.itersections(filter_func=lambda x: x.name=="SpikeSorting" or x.type=="spikesorting")
odmldoc.iterproperties(filter_func=lambda x:x.name=="IsSpikeSorted")
odmldoc.itervalues(filter_func=lambda x: x.dtype==odml.DType.boolean and x.parent.name=="IsSpikeSorted")
```

To optimize the visibility of this functionality it would be nice to have (in addition) convenience functions for filtering (cookie-cutter-filter-functions), e.g. by objects:
```
odmldoc.filter_sections(name="SpikeSorting", type="spikesorting", operation="or")
odmldoc.filter_properties(name="IsSpikeSorted")
odmldoc.filter_values(dtype=odml.DType.boolean, parent_name="IsSpikeSorted", operation="and")
```

Or by attributes, e.g.:
`odmldoc.filter_by_name("SpikeSorting", exact=True)`

Or we even discuss the design of a "generic" filter function, e.g.:
`odmldoc.filter(objecttype=["sections", "properties"], **kwords)`
The question here is how to handle operations (and vs or) within and between search attributes.

And in addition we could think about a "template"-search.

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.