updated table in report

This commit is contained in:
Claudio Maggioni 2023-12-27 16:18:52 +01:00
parent 967209b852
commit f77c297ca0
5 changed files with 26 additions and 21 deletions

View file

@ -57,6 +57,8 @@ def compute_stats(df_gen: pd.DataFrame, df_fuz: pd.DataFrame, output_file: str,
combined_df.columns = ['source', *combined_df.columns[1:]] combined_df.columns = ['source', *combined_df.columns[1:]]
del combined_df[combined_df.columns[1]] del combined_df[combined_df.columns[1]]
combined_df = combined_df.sort_values(['source', 'file'])
plt.figure(figsize=(10, 6)) plt.figure(figsize=(10, 6))
sns.set(style="whitegrid") sns.set(style="whitegrid")
sns.boxplot(data=combined_df, x="file", y="score", hue="source") sns.boxplot(data=combined_df, x="file", y="score", hue="source")
@ -66,7 +68,7 @@ def compute_stats(df_gen: pd.DataFrame, df_fuz: pd.DataFrame, output_file: str,
plt.savefig(output_file) plt.savefig(output_file)
plt.figure(figsize=(10, 6)) plt.figure(figsize=(10, 6))
df_avg = combined_df.groupby(['file', 'source']).mean().reset_index() df_avg = combined_df.groupby(['file', 'source']).mean().reset_index().sort_values(['source', 'file'])
sns.set(style="whitegrid") sns.set(style="whitegrid")
sns.barplot(data=df_avg, x="file", y="score", hue="source") sns.barplot(data=df_avg, x="file", y="score", hue="source")
plt.yticks(range(0, 101, 10)) plt.yticks(range(0, 101, 10))

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

View file

@ -52,13 +52,13 @@
\begin{table} [H] \begin{table} [H]
\centering \centering
\begin{tabular}{lr} \begin{tabular}{lr}
\toprule \toprule
\textbf{Type} & \textbf{Number} \\ \textbf{Type} & \textbf{Number} \\
\midrule \midrule
Python Files & 10 \\ Python Files & 10 \\
Function Nodes & 12 \\ Function Nodes & 12 \\
Comparison Nodes & 44 \\ Comparison Nodes & 44 \\
\bottomrule \bottomrule
\end{tabular} \end{tabular}
\caption{Count of files and nodes found.} \caption{Count of files and nodes found.}
\label{tab:count1} \label{tab:count1}
@ -112,20 +112,23 @@
\centering \centering
\begin{tabular}{lrrp{3.5cm}r} \begin{tabular}{lrrp{3.5cm}r}
\toprule \toprule
\textbf{File} & \textbf{$E(\text{Fuzzer})$} & \textbf{$E(\text{Genetic})$} & \hfill \textbf{Cohen's $d$} & \textbf{Wilcoxon $p$} \\ \midrule \textbf{File} & \textbf{$E(\text{Fuzzer})$} & \textbf{$E(\text{Genetic})$} & \textbf{Cohen's $|d|$} & \textbf{Wilcoxon $p$} \\
anagram\_check & 23.16 & 18.51 & -0.5690 \hfill (Large) & 0.0526 \\ \midrule
caesar\_cipher & 60.18 & 62.39 & 0.4672 \hfill (Medium) & 0.3590 \\ check\_armstrong & 58.07 & 93.50 & 2.0757 \hfill Huge & 0.0020 \\
check\_armstrong & 89.54 & 89.18 & -0.1427 \hfill (Small) & 0.6250 \\ railfence\_cipher & 88.41 & 87.44 & 0.8844 \hfill Very large & 0.1011 \\
common\_divisor\_count & 71.21 & 72.26 & 0.2596 \hfill (Medium) & 0.5566 \\ longest\_substring & 77.41 & 76.98 & 0.0771 \hfill Small & 0.7589 \\
exponentiation & 68.99 & 68.48 & -0.0990 \hfill (Small) & 0.7695 \\ common\_divisor\_count & 76.17 & 72.76 & 0.7471 \hfill Large & 0.1258 \\
gcd & 50.80 & 44.68 & -1.0306 \hfill (Very large) & 0.0665 \\ zellers\_birthday & 68.09 & 71.75 & 1.4701 \hfill Huge & 0.0039 \\
longest\_substring & 83.96 & 83.01 & -0.1547 \hfill (Small) & 0.8457 \\ exponentiation & 69.44 & 67.14 & 0.3342 \hfill Medium & 0.7108 \\
rabin\_karp & 66.15 & 64.51 & -0.4597 \hfill (Medium) & 0.3081 \\ caesar\_cipher & 60.59 & 61.20 & 0.3549 \hfill Medium & 0.2955 \\
railfence\_cipher & 90.28 & 89.62 & -0.3514 \hfill (Medium) & 0.3750 \\ gcd & 59.15 & 55.66 & 0.5016 \hfill Large & 0.1627 \\
zellers\_birthday & 69.10 & 67.86 & -0.5598 \hfill (Large) & 0.1851 \\ \bottomrule rabin\_karp & 27.90 & 47.55 & 2.3688 \hfill Huge & 0.0078 \\
anagram\_check & 23.10 & 7.70 & $\infty$ \hfill Huge & 0.0020 \\
\bottomrule
\end{tabular} \end{tabular}
\caption{Statistical comparison between fuzzer and genetic algorithm test case generation in terms of mutation \caption{Statistical comparison between fuzzer and genetic algorithm test case generation in terms of mutation
score as reported by \textit{mut.py} over 10 runs. The table reports run means, the wilcoxon paired test p-value score as reported by \textit{mut.py} over 10 runs, sorted by genetic mutation score. The table reports run
and the Cohen's $d$ effect size for each file in the benchmark.}\label{tab:stats} means, the wilcoxon paired test p-value and the Cohen's $d$ effect size for each file in the
benchmark.}\label{tab:stats}
\end{table} \end{table}
\end{document} \end{document}