Leo Torres
Leo Torres
I think the rationale is that 4 belongs to one (singleton) edge. So in a way, it is correct. The fix would be to add a parameter "ignore_singletons" as is...
It comes down to a matter of semantics/perspective. Is the degree the number of neighboring nodes? If so, do you count repetitions (when a neighbor appears in many different edges)?...
Agreed, let's put it in the agenda.
Agreed, at this point we should just pick one and stick with it. (Though, if I may add one more data point: in graphs with self-loops, usually a node's degree...
My solution to this was proposed [here](https://github.com/ComplexGroupInteractions/xgi/issues/117#issuecomment-1198202029). Would something like this solve your issue? The shorter way after implementing that would be something like `H.edges.size.asdist()`, plus some bells and whistles...
I haven't read the entire code yet BUT the `+` operator should absolutely at all times represent an operation that is commutative. If it is not commutative, then we shouldn't...
OK how about this? ```python3 # Keeps edge ids of H1 and relabels the edge ids of H2 # All edges (after relabeling) keep all their attributes # The node...
OK to be honest, what I wrote in the title is my current hunch as to why this is happening, but I might be wrong.
An easy (temporary?) fix is to encourage the user to do this instead: ```python3 H1.edges.members(dtype=dict) == H2.edges.members(dtype=dict) ```
Yes for now I'd rather have it work as `xgi.density(H)`.