  ct=pd.crosstab([t.status,t.class_label],t.floor_group); ct['n']=ct.sum(1); ct['high%']=(100*ct.high/ct.n).round(0); print(ct)
floor_group          high  level  low    n  high%
status  class_label                              
opening melted         13     13   15   41   32.0
        smeared         7      3   12   22   32.0
plain   melted         21     45   39  105   20.0
        smeared        10      9   21   40   25.0
floor_group      high  level  low
status  zone                     
opening beyond     20     14   22
        contact     0      2    5
plain   beyond     13     16   28
        contact    18     38   32
high share opening 20/63 vs plain 31/145 Fisher p=0.118
median floor-minus-outer: opening -15, plain -24, MW p=0.934
20 40 {'opening': '11/40', 'plain': '16/92'}
40 1000 {'opening': '9/23', 'plain': '15/53'}
mare
Mare Australe         28
Mare Fecunditatis     12
Mare Imbrium           5
Mare Crisium           5
Mare Smythii           4
Mare Nectaris          3
Mare Humorum           2
Mare Humboldtianum     2
Grimaldi               1
Mare Serenitatis       1
Name: count, dtype: int64
