Skip to content

Commit c460b2c

Browse files
committed
adding get_flattenend_dataframe
1 parent 4bd2c47 commit c460b2c

1 file changed

Lines changed: 27 additions & 0 deletions

File tree

FlowCyPy/sub_frames/peaks.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -709,3 +709,30 @@ def clip_data(
709709
signal = signal[signal <= clip_value]
710710

711711
return signal
712+
713+
def get_flattened_dataframe(self):
714+
715+
df = self.copy().unstack("Detector")
716+
717+
# Move detector first, metric second
718+
df.columns = df.columns.swaplevel(0, 1)
719+
720+
# Sort columns if desired
721+
df = df.sort_index(axis=1)
722+
723+
# Rename metrics to short suffixes
724+
metric_map = {
725+
"Index": "I",
726+
"Height": "H",
727+
"Area": "A",
728+
}
729+
730+
# Flatten MultiIndex columns
731+
df.columns = [
732+
f"{detector}-{metric_map[metric]}" for detector, metric in df.columns
733+
]
734+
735+
# Optional: bring SegmentID / PeakID back as normal columns
736+
df = df.reset_index()
737+
738+
return df

0 commit comments

Comments
 (0)