Skip to content

Commit 287c357

Browse files
Alekh MekaAlekh Meka
authored andcommitted
Added column for 'Overhead'
1 parent 05d0abc commit 287c357

1 file changed

Lines changed: 10 additions & 7 deletions

File tree

artifacts/experiments/RQ4/generateResults.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
REPORT_NAME = "artifacts/output/rq4.csv"
1111
TEX_REPORT_NAME = "artifacts/output/rq4.tex"
1212

13-
CALC_NAMES = ['Vanilla', 'Improved']
13+
RAW_NAMES = ['Vanilla', 'Improved']
14+
CALC_NAMES = ['Vanilla', 'Improved', 'Overhead']
1415

1516
propertyShortNames = {
1617
"TestSmartByteSerializer#canRoundTripBytes": 'byte',
@@ -153,21 +154,24 @@ def main():
153154
df = pd.DataFrame()
154155
for project in PROJECTS:
155156
final_dataset[project]['_style'] = ''
156-
proj_mean_and_std = final_dataset[project][CALC_NAMES].copy()
157+
proj_mean_and_std = final_dataset[project][RAW_NAMES].copy()
157158
vanilla_mean = pd.DataFrame(proj_mean_and_std['Vanilla'].apply(lambda v: float(v.split(" \u00B1 ")[0]) if
158159
" \u00B1 " in str(v) else np.nan)).reset_index()
159160
improved_mean = pd.DataFrame(proj_mean_and_std['Improved'].apply(lambda v: float(v.split(" \u00B1 ")[0]) if
160161
" \u00B1 " in str(v) else np.nan)).reset_index()
161162

162-
proj_stats = pd.merge(vanilla_mean.copy(), improved_mean.copy(), how='outer', on='index')[CALC_NAMES]
163-
final_dataset[project]['Difference'] = proj_stats[['Vanilla', 'Improved']].pct_change(axis='columns')['Improved']
164-
proj_mean = pd.merge(vanilla_mean, improved_mean, how='outer', on='index')[CALC_NAMES].mean()
163+
proj_stats = pd.merge(vanilla_mean, improved_mean, how='outer', on='index')[RAW_NAMES].reset_index()
164+
165+
final_dataset[project]['Overhead'] = proj_stats[['Improved']].values / proj_stats[['Vanilla']].values
166+
overhead_stats = final_dataset[project]['Overhead'].copy().reset_index()
167+
168+
proj_mean = pd.merge(proj_stats, overhead_stats, how='outer', on='index')[CALC_NAMES].mean()
165169
proj_mean['_style'] = 'BOLD'
166170
proj_mean['N'] = ''
167171
proj_mean['Property'] = 'Average'
168172
final_dataset[project].loc['mean'] = proj_mean
169173

170-
header = dict(zip(['N', 'Property', 'Vanilla', 'Improved', 'Difference'], ['', '', '', '', '']))
174+
header = dict(zip(['N', 'Property', 'Vanilla', 'Improved', 'Overhead'], ['', '', '', '', '']))
171175
df = pd.concat([
172176
df,
173177
pd.DataFrame(header | {'_style': 'HEADER', 'Property': project}, index=[0]),
@@ -203,6 +207,5 @@ def main():
203207
tf.write(outTable)
204208

205209

206-
207210
if __name__ == "__main__":
208211
main()

0 commit comments

Comments
 (0)