Skip to content

Commit 7f4e7c8

Browse files
committed
Ensure consistent ordering of edge types in subsample analysis table
1 parent 708c00e commit 7f4e7c8

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

reconstruction/analyze_subsample_results.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ def getArgs():
130130
CsvWriter.Property("Measurable 2", "medians", "measurable2"),
131131
CsvWriter.Property("Cell Type 1", "medians", "cellType1"),
132132
CsvWriter.Property("Cell Type 2", "medians", "cellType2"),
133-
CsvWriter.PropertiesFormatted("Edge Type", "medians", "{}<==>{}", ["cellType1", "cellType2"]),
133+
CsvWriter.PropertiesFormatted("Edge Type", "medians", "{}<==>{}", ["cellType1", "cellType2"], order=True),
134134
*dataColumns
135135
)
136136
else:

reconstruction/util/CsvWriter.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,18 +72,21 @@ def getDataKeys(self):
7272
return [self.dataKey]
7373

7474
class PropertiesFormatted(ColumnSpec):
75-
def __init__(self, title, dataKey, formatStr, propertyDims, **kwargs):
75+
def __init__(self, title, dataKey, formatStr, propertyDims, order=False, **kwargs):
7676
super().__init__(**kwargs)
7777
self.title = title
7878
self.dataKey = dataKey
7979
self.formatStr = formatStr
8080
self.propertyDims = propertyDims
81+
self.order = order
8182

8283
def getHeaders(self, data):
8384
return [self.title]
8485

8586
def _getValues(self, data, dim, coords, dataArr):
8687
properties = numpy.array([dataArr.sel({dim: coords}).coords[propertyDim].data for propertyDim in self.propertyDims]).T
88+
if self.order:
89+
properties.sort(axis=1)
8790
return [[self.formatStr.format(*propertyList) for propertyList in properties]]
8891

8992
def getDataKeys(self):

0 commit comments

Comments
 (0)