connectome_manipulator.connectome_manipulation.manipulation.syn_removal.SynapseRemoval¶
Connectome manipulation class for removing synapses:
Removes a percentage of randomly selected synapses according to certain cell
selection criteria, optionally keeping connections (i.e., at least 1 syn/conn)
and rescaling g_syns to keep sum of g_syns per connection constant (unless there
is no synapse per connection left).
The manipulation can be applied through the apply() method.
- connectome_manipulator.connectome_manipulation.manipulation.syn_removal.SynapseRemoval.apply(self, split_ids, sel_src=None, sel_dest=None, amount_pct=100.0, keep_conns=False, rescale_gsyn=False, **kwargs)¶
Applies a removal of synapses according to certain cell selection criteria.
- Parameters:
split_ids (list-like) – List of neuron IDs that are part of the current data split; will be automatically provided by the manipulator framework
sel_src (str/list-like/dict) – Source (pre-synaptic) neuron selection
sel_dest (str/list-like/dict) – Target (post-synaptic) neuron selection
amount_pct (float) – Percentage of randomly sampled synapses to be removed
keep_conns (bool) – If selected, won’t remove entire connections but will keep (at least) one synapse per connection
rescale_gsyn (bool) – If selected, rescales g_syn (synaptic “conductance” property) so that the sum of g_syns per connections before and after the manipulation is kept the same (unless the entire connection has been removed)
**kwargs – Additional keyword arguments - Not used
Note
Input/output edges (synapse) tables are accessed through the
writerobject:Loading input edges:
edges_table = self.writer.to_pandas()Writing output edges:
self.writer.from_pandas(edges_table_manip)