diff --git a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMPregen.py b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMPregen.py
index b79606dfc88b5e272c2d10365b301b6c2053de2d..6ee4f62c90135803ce6d788e0cbe6451e6ed3010 100644
--- a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMPregen.py
+++ b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMPregen.py
@@ -49,9 +49,17 @@ class SCMPregen(scm, BaseMonoviewClassifier, PregenClassifier):
 
     def predict(self, X):
         pregen_X, _ = self.pregen_voters(X)
-        np.savetxt("pregen_x.csv", pregen_X, delimiter=',')
-        place_holder = np.genfromtxt("pregen_x.csv", delimiter=',')
-        os.remove("pregen_x.csv")
+        list_files = os.listdir(".")
+        if "pregen_x.csv" in list_files:
+            i = 0
+            file_name = "pregen_x" + str(i) + ".csv"
+            while file_name in list_files:
+                i += 1
+        else:
+            file_name = "pregen_x.csv"
+        np.savetxt(file_name, pregen_X, delimiter=',')
+        place_holder = np.genfromtxt(file_name, delimiter=',')
+        os.remove(file_name)
         return self.classes_[self.model_.predict(place_holder)]
 
     def get_params(self, deep=True):
diff --git a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMPregenTree.py b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMPregenTree.py
index 234ca0c355dfcbc762b42146d261a6d472d870a6..b2f59c39d6b59feeb8c89aa079e4c20ed7d18b76 100644
--- a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMPregenTree.py
+++ b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMPregenTree.py
@@ -35,9 +35,17 @@ class SCMPregenTree(scm, BaseMonoviewClassifier, PregenClassifier):
 
     def fit(self, X, y, tiebreaker=None, iteration_callback=None, **fit_params):
         pregen_X, _ = self.pregen_voters(X, y, generator="Trees")
-        np.savetxt("pregen_x.csv", pregen_X, delimiter=',')
-        place_holder = np.genfromtxt("pregen_x.csv", delimiter=',')
-        os.remove("pregen_x.csv")
+        list_files = os.listdir(".")
+        if "pregen_x.csv" in list_files:
+            i = 0
+            file_name = "pregen_x" + str(i) + ".csv"
+            while file_name in list_files:
+                i += 1
+        else:
+            file_name = "pregen_x.csv"
+        np.savetxt(file_name, pregen_X, delimiter=',')
+        place_holder = np.genfromtxt(file_name, delimiter=',')
+        os.remove(file_name)
         super(SCMPregenTree, self).fit(place_holder, y, tiebreaker=tiebreaker, iteration_callback=iteration_callback, **fit_params)
         return self
 
diff --git a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMSparsity.py b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMSparsity.py
index bd3541367b3098ea3b99992f1304ac0f5426a7e0..05f7e25746371b50a91e42a4d389cfc0a3680685 100644
--- a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMSparsity.py
+++ b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMSparsity.py
@@ -42,9 +42,17 @@ class SCMSparsity(BaseMonoviewClassifier, PregenClassifier):
 
     def fit(self, X, y, tiebreaker=None, iteration_callback=None, **fit_params):
         pregen_X, _ = self.pregen_voters(X, y)
-        np.savetxt("pregen_x.csv", pregen_X, delimiter=',')
-        place_holder = np.genfromtxt("pregen_x.csv", delimiter=',')
-        os.remove("pregen_x.csv")
+        list_files = os.listdir(".")
+        if "pregen_x.csv" in list_files:
+            i = 0
+            file_name = "pregen_x" + str(i) + ".csv"
+            while file_name in list_files:
+                i += 1
+        else:
+            file_name = "pregen_x.csv"
+        np.savetxt(file_name, pregen_X, delimiter=',')
+        place_holder = np.genfromtxt(file_name, delimiter=',')
+        os.remove(file_name)
         for scm_estimator in self.scm_estimators:
             beg = time.time()
             scm_estimator.fit(place_holder, y, tiebreaker=None, iteration_callback=None, **fit_params)
diff --git a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMSparsityTree.py b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMSparsityTree.py
index 2fbd7c39d08c0e1eb04876da954eafdfd54ee5fe..e7cbad62c231fe6809b91c85bba40c3557fa2612 100644
--- a/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMSparsityTree.py
+++ b/multiview_platform/MonoMultiViewClassifiers/MonoviewClassifiers/SCMSparsityTree.py
@@ -42,9 +42,17 @@ class SCMSparsityTree(BaseMonoviewClassifier, PregenClassifier):
 
     def fit(self, X, y, tiebreaker=None, iteration_callback=None, **fit_params):
         pregen_X, _ = self.pregen_voters(X, y, generator="Trees")
-        np.savetxt("pregen_x.csv", pregen_X, delimiter=',')
-        place_holder = np.genfromtxt("pregen_x.csv", delimiter=',')
-        os.remove("pregen_x.csv")
+        list_files = os.listdir(".")
+        if "pregen_x.csv" in list_files:
+            i = 0
+            file_name = "pregen_x" + str(i) + ".csv"
+            while file_name in list_files:
+                i += 1
+        else:
+            file_name = "pregen_x.csv"
+        np.savetxt(file_name, pregen_X, delimiter=',')
+        place_holder = np.genfromtxt(file_name, delimiter=',')
+        os.remove(file_name)
         for scm_estimator in self.scm_estimators:
             beg = time.time()
             scm_estimator.fit(place_holder, y, tiebreaker=None, iteration_callback=None, **fit_params)