agatha.construct.graph_util module¶
-
agatha.construct.graph_util.
record_to_bipartite_edges
(records, get_neighbor_keys_fn, get_source_key_fn=<function <lambda>>, bidirectional=True)¶ This function is responsible for extracting edges from records. For example, if you had a bag of records, each containing a set of terms, you might want to get the set of edges between records and terms.
- Parameters
records (
Bag
) – The collection of records we wish to extract edges from.get_neighbor_keys_fn (
Callable
[[Dict
[str
,Any
]],Iterable
[str
]]) – Given a record, return a list of graph keys that are adjacent to the given recordget_source_key_fn (
Callable
[[Dict
[str
,Any
]],str
]) – Given a record, return a graph key that uniquely identifies the root. By default we get the “id” fieldbidirectional (
bool
) – If true, we write record->neighbor and neighbor->record. If false, we only write record->neighbor.
- Return type
Bag
- Returns
A bag containing serialized key-value pairs that can be used to create an Sqlite3LookupTable