Thanks @vletm I didn't even consider the MINIFS, AVERAGEIFS and MAXIFS.
I did make a slight tweak to your formulas as follows; in I6:
=MINIFS($O6:$AD6,$O$3:$AD$3,$B$6,$O6:$AD6,">0")
in K6:
=AVERAGEIFS($O6:$AD6,$O$3:$AD$3,$B$6,$O6:$AD6,">0")
and in M6...