Skip to content

Commit 8e46589

Browse files
committed
update rdd qmd files
1 parent 70d2f7a commit 8e46589

File tree

1 file changed

+49
-71
lines changed

1 file changed

+49
-71
lines changed

doc/rdd/rdd.qmd

Lines changed: 49 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -10,55 +10,17 @@ jupyter: python3
1010
1111
import numpy as np
1212
import pandas as pd
13-
from itables import init_notebook_mode, show, options
13+
from itables import init_notebook_mode
14+
import os
15+
import sys
1416
15-
init_notebook_mode(all_interactive=True)
17+
doc_dir = os.path.abspath(os.path.join(os.getcwd(), ".."))
18+
if doc_dir not in sys.path:
19+
sys.path.append(doc_dir)
20+
21+
from utils.style_tables import generate_and_show_styled_table
1622
17-
def highlight_range(s, level=0.95, dist=0.05, props=''):
18-
color_grid = np.where((s >= level-dist) &
19-
(s <= level+dist), props, '')
20-
return color_grid
21-
22-
23-
def color_coverage(df, level):
24-
# color coverage column order is important
25-
styled_df = df.apply(
26-
highlight_range,
27-
level=level,
28-
dist=1.0,
29-
props='color:black;background-color:red',
30-
subset=["Coverage"])
31-
styled_df = styled_df.apply(
32-
highlight_range,
33-
level=level,
34-
dist=0.1,
35-
props='color:black;background-color:yellow',
36-
subset=["Coverage"])
37-
styled_df = styled_df.apply(
38-
highlight_range,
39-
level=level,
40-
dist=0.05,
41-
props='color:white;background-color:darkgreen',
42-
subset=["Coverage"])
43-
44-
# set all coverage values to bold
45-
styled_df = styled_df.set_properties(
46-
**{'font-weight': 'bold'},
47-
subset=["Coverage"])
48-
return styled_df
49-
50-
51-
def make_pretty(df, level, n_rep):
52-
styled_df = df.style.hide(axis="index")
53-
# Format only float columns
54-
float_cols = df.select_dtypes(include=['float']).columns
55-
styled_df = styled_df.format({col: "{:.3f}" for col in float_cols})
56-
57-
# color coverage column order is important
58-
styled_df = color_coverage(styled_df, level)
59-
caption = f"Coverage for {level*100}%-Confidence Interval over {n_rep} Repetitions"
60-
61-
return show(styled_df, caption=caption, allow_html=True)
23+
init_notebook_mode(all_interactive=True)
6224
```
6325

6426
## Sharp Design
@@ -80,28 +42,36 @@ print(metadata_df.T.to_string(header=False))
8042
# | echo: false
8143
8244
# set up data and rename columns
83-
df = pd.read_csv("../../results/rdd/rdd_sharp_coverage.csv", index_col=None)
45+
df_sharp = pd.read_csv("../../results/rdd/rdd_sharp_coverage.csv", index_col=None)
8446
85-
assert df["repetition"].nunique() == 1
86-
n_rep = df["repetition"].unique()[0]
47+
assert df_sharp["repetition"].nunique() == 1
48+
n_rep_sharp = df_sharp["repetition"].unique()[0]
8749
88-
display_columns = ["Method", "Learner g", "fs specification", "Bias", "CI Length", "Coverage"]
50+
display_columns_sharp = ["Method", "Learner g", "fs specification", "Bias", "CI Length", "Coverage"]
8951
```
9052

9153
```{python}
9254
#| echo: false
93-
level = 0.95
94-
95-
df_ate_95 = df[(df['level'] == level)][display_columns]
96-
make_pretty(df_ate_95, level, n_rep)
55+
generate_and_show_styled_table(
56+
main_df=df_sharp,
57+
filters={"level": 0.95},
58+
display_cols=display_columns_sharp,
59+
n_rep=n_rep_sharp,
60+
level_col="level",
61+
coverage_highlight_cols=["Coverage"]
62+
)
9763
```
9864

9965
```{python}
10066
#| echo: false
101-
level = 0.9
102-
103-
df_ate_9 = df[(df['level'] == level)][display_columns]
104-
make_pretty(df_ate_9, level, n_rep)
67+
generate_and_show_styled_table(
68+
main_df=df_sharp,
69+
filters={"level": 0.9},
70+
display_cols=display_columns_sharp,
71+
n_rep=n_rep_sharp,
72+
level_col="level",
73+
coverage_highlight_cols=["Coverage"]
74+
)
10575
```
10676

10777

@@ -124,26 +94,34 @@ print(metadata_df.T.to_string(header=False))
12494
# | echo: false
12595
12696
# set up data and rename columns
127-
df = pd.read_csv("../../results/rdd/rdd_fuzzy_coverage.csv", index_col=None)
97+
df_fuzzy = pd.read_csv("../../results/rdd/rdd_fuzzy_coverage.csv", index_col=None)
12898
129-
assert df["repetition"].nunique() == 1
130-
n_rep = df["repetition"].unique()[0]
99+
assert df_fuzzy["repetition"].nunique() == 1
100+
n_rep_fuzzy = df_fuzzy["repetition"].unique()[0]
131101
132-
display_columns = ["Method", "Learner g", "Learner m", "fs specification", "Bias", "CI Length", "Coverage"]
102+
display_columns_fuzzy = ["Method", "Learner g", "Learner m", "fs specification", "Bias", "CI Length", "Coverage"]
133103
```
134104

135105
```{python}
136106
#| echo: false
137-
level = 0.95
138-
139-
df_ate_95 = df[(df['level'] == level)][display_columns]
140-
make_pretty(df_ate_95, level, n_rep)
107+
generate_and_show_styled_table(
108+
main_df=df_fuzzy,
109+
filters={"level": 0.95},
110+
display_cols=display_columns_fuzzy,
111+
n_rep=n_rep_fuzzy,
112+
level_col="level",
113+
coverage_highlight_cols=["Coverage"]
114+
)
141115
```
142116

143117
```{python}
144118
#| echo: false
145-
level = 0.9
146-
147-
df_ate_9 = df[(df['level'] == level)][display_columns]
148-
make_pretty(df_ate_9, level, n_rep)
119+
generate_and_show_styled_table(
120+
main_df=df_fuzzy,
121+
filters={"level": 0.9},
122+
display_cols=display_columns_fuzzy,
123+
n_rep=n_rep_fuzzy,
124+
level_col="level",
125+
coverage_highlight_cols=["Coverage"]
126+
)
149127
```

0 commit comments

Comments
 (0)