summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorChristian Krinitsin <mail@krinitsin.com>2025-06-03 14:42:26 +0200
committerChristian Krinitsin <mail@krinitsin.com>2025-06-03 14:42:26 +0200
commitfeeab5ac8a8d1bb925257f37b9a3af965ce9439d (patch)
tree90bf3c3deaa38fed777114b2d940eec12c327e91
parentd760c82f4244dc47f5413c3c88b640bb1f0f2d9e (diff)
downloademulator-bug-study-feeab5ac8a8d1bb925257f37b9a3af965ce9439d.tar.gz
emulator-bug-study-feeab5ac8a8d1bb925257f37b9a3af965ce9439d.zip
tool: results_to_csv parser
-rwxr-xr-xclassification/tools/parse_categories.py29
-rw-r--r--results/classifier/001/categories.csv5
-rw-r--r--results/classifier/002/categories.csv6
-rw-r--r--results/classifier/003/categories.csv8
-rw-r--r--results/classifier/004/assembly/48245039 (renamed from results/classifier/004/device/48245039)0
-rw-r--r--results/classifier/004/categories.csv12
-rw-r--r--results/classifier/004/instruction/26095107 (renamed from results/classifier/004/device/26095107)0
-rw-r--r--results/classifier/004/mistranslation/36568044 (renamed from results/classifier/004/device/36568044)0
-rw-r--r--results/classifier/004/semantic/46572227 (renamed from results/classifier/004/graphic/46572227)0
-rw-r--r--results/classifier/004/semantic/53568181 (renamed from results/classifier/004/graphic/53568181)0
-rw-r--r--results/classifier/004/semantic/96782458 (renamed from results/classifier/004/other/96782458)0
-rw-r--r--results/classifier/005/categories.csv11
-rw-r--r--results/classifier/005/device/26095107 (renamed from results/classifier/005/instruction/26095107)0
-rw-r--r--results/classifier/005/device/36568044 (renamed from results/classifier/005/mistranslation/36568044)0
-rw-r--r--results/classifier/005/device/48245039 (renamed from results/classifier/005/assembly/48245039)0
-rw-r--r--results/classifier/005/graphic/46572227 (renamed from results/classifier/005/semantic/46572227)0
-rw-r--r--results/classifier/005/graphic/53568181 (renamed from results/classifier/005/semantic/53568181)0
-rw-r--r--results/classifier/005/other/96782458 (renamed from results/classifier/005/semantic/96782458)0
-rw-r--r--results/classifier/105/categories.csv13
19 files changed, 84 insertions, 0 deletions
diff --git a/classification/tools/parse_categories.py b/classification/tools/parse_categories.py
new file mode 100755
index 00000000..c57c45e6
--- /dev/null
+++ b/classification/tools/parse_categories.py
@@ -0,0 +1,29 @@
+from os import listdir, path
+
+root_directory = "../../results/classifier/"
+
+def parse_iteration(directory):
+    dictionary = {}
+
+    for entry in listdir(directory):
+        full_path = path.join(directory, entry)
+        if path.isdir(full_path):
+            dictionary[entry] = len([name for name in listdir(full_path)])
+
+    return dictionary
+
+def output_csv(dictionary, full_path):
+    with open(path.join(full_path, 'categories.csv'), "w") as file:
+        file.write("category, count\n")
+        for key, value in dictionary.items():
+            file.write(f"{key}, {value}\n")
+
+def main():
+    for entry in listdir(root_directory):
+        full_path = path.join(root_directory, entry)
+        if path.isdir(full_path):
+            dictionary = parse_iteration(full_path)
+            output_csv(dictionary, full_path)
+
+if __name__ == "__main__":
+    main()
diff --git a/results/classifier/001/categories.csv b/results/classifier/001/categories.csv
new file mode 100644
index 00000000..c7f9ed0a
--- /dev/null
+++ b/results/classifier/001/categories.csv
@@ -0,0 +1,5 @@
+category, count
+instruction, 13
+mistranslation, 14
+other, 48
+semantic, 14
diff --git a/results/classifier/002/categories.csv b/results/classifier/002/categories.csv
new file mode 100644
index 00000000..ddf01443
--- /dev/null
+++ b/results/classifier/002/categories.csv
@@ -0,0 +1,6 @@
+category, count
+boot, 4
+instruction, 11
+mistranslation, 14
+other, 46
+semantic, 14
diff --git a/results/classifier/003/categories.csv b/results/classifier/003/categories.csv
new file mode 100644
index 00000000..ea68f18c
--- /dev/null
+++ b/results/classifier/003/categories.csv
@@ -0,0 +1,8 @@
+category, count
+KVM, 8
+boot, 4
+instruction, 8
+mistranslation, 11
+network, 2
+other, 43
+semantic, 13
diff --git a/results/classifier/004/device/48245039 b/results/classifier/004/assembly/48245039
index b1a9e651..b1a9e651 100644
--- a/results/classifier/004/device/48245039
+++ b/results/classifier/004/assembly/48245039
diff --git a/results/classifier/004/categories.csv b/results/classifier/004/categories.csv
new file mode 100644
index 00000000..fcb7b1b9
--- /dev/null
+++ b/results/classifier/004/categories.csv
@@ -0,0 +1,12 @@
+category, count
+KVM, 5
+assembly, 1
+boot, 2
+device, 9
+graphic, 4
+instruction, 5
+mistranslation, 9
+network, 2
+other, 38
+semantic, 10
+vnc, 4
diff --git a/results/classifier/004/device/26095107 b/results/classifier/004/instruction/26095107
index f23d3275..f23d3275 100644
--- a/results/classifier/004/device/26095107
+++ b/results/classifier/004/instruction/26095107
diff --git a/results/classifier/004/device/36568044 b/results/classifier/004/mistranslation/36568044
index ba6cad70..ba6cad70 100644
--- a/results/classifier/004/device/36568044
+++ b/results/classifier/004/mistranslation/36568044
diff --git a/results/classifier/004/graphic/46572227 b/results/classifier/004/semantic/46572227
index ae72af54..ae72af54 100644
--- a/results/classifier/004/graphic/46572227
+++ b/results/classifier/004/semantic/46572227
diff --git a/results/classifier/004/graphic/53568181 b/results/classifier/004/semantic/53568181
index 31dd76b6..31dd76b6 100644
--- a/results/classifier/004/graphic/53568181
+++ b/results/classifier/004/semantic/53568181
diff --git a/results/classifier/004/other/96782458 b/results/classifier/004/semantic/96782458
index dabee5fb..dabee5fb 100644
--- a/results/classifier/004/other/96782458
+++ b/results/classifier/004/semantic/96782458
diff --git a/results/classifier/005/categories.csv b/results/classifier/005/categories.csv
new file mode 100644
index 00000000..82298deb
--- /dev/null
+++ b/results/classifier/005/categories.csv
@@ -0,0 +1,11 @@
+category, count
+KVM, 5
+boot, 2
+device, 12
+graphic, 6
+instruction, 4
+mistranslation, 8
+network, 2
+other, 39
+semantic, 7
+vnc, 4
diff --git a/results/classifier/005/instruction/26095107 b/results/classifier/005/device/26095107
index f23d3275..f23d3275 100644
--- a/results/classifier/005/instruction/26095107
+++ b/results/classifier/005/device/26095107
diff --git a/results/classifier/005/mistranslation/36568044 b/results/classifier/005/device/36568044
index ba6cad70..ba6cad70 100644
--- a/results/classifier/005/mistranslation/36568044
+++ b/results/classifier/005/device/36568044
diff --git a/results/classifier/005/assembly/48245039 b/results/classifier/005/device/48245039
index b1a9e651..b1a9e651 100644
--- a/results/classifier/005/assembly/48245039
+++ b/results/classifier/005/device/48245039
diff --git a/results/classifier/005/semantic/46572227 b/results/classifier/005/graphic/46572227
index ae72af54..ae72af54 100644
--- a/results/classifier/005/semantic/46572227
+++ b/results/classifier/005/graphic/46572227
diff --git a/results/classifier/005/semantic/53568181 b/results/classifier/005/graphic/53568181
index 31dd76b6..31dd76b6 100644
--- a/results/classifier/005/semantic/53568181
+++ b/results/classifier/005/graphic/53568181
diff --git a/results/classifier/005/semantic/96782458 b/results/classifier/005/other/96782458
index dabee5fb..dabee5fb 100644
--- a/results/classifier/005/semantic/96782458
+++ b/results/classifier/005/other/96782458
diff --git a/results/classifier/105/categories.csv b/results/classifier/105/categories.csv
new file mode 100644
index 00000000..46a7fc35
--- /dev/null
+++ b/results/classifier/105/categories.csv
@@ -0,0 +1,13 @@
+category, count
+KVM, 250
+assembly, 36
+boot, 133
+device, 1494
+graphic, 1275
+instruction, 509
+mistranslation, 500
+network, 184
+other, 1065
+semantic, 177
+socket, 93
+vnc, 96