--- a +++ b/modules/RawDB/RDBManager.py @@ -0,0 +1,92 @@ +import shutil +from IE import CreateCSV +from IE import boolMapToFreq +import sys +sys.path.insert(0, "/home/skjena/cancerTherapy/modules") +from Status.Status import Status + +# GETCSV creates a csv file in the specified path +# @row: a tag, specifies whether a row is a cancer or a token +# @column: a tag, specifies whether a column is a cancer or a token + +class RDBManager(): + def __init__(self, dataset): + self.status = Status("RDBManager") + self.dataset = dataset + self.datapath = self.GETDATASETFILE() + self.scaledpath = self.GETSCALEDDATASETFILE() + self.dataframe = self.boolToFreq() + + def GETCSV(self, row, column, numRows, numCols, path): + self.status.message(1, "GETCSV(self, row, column, numRows, numCols, path)") + CreateCSV.createCSV(row, column, numRows, numCols, path) + self.status.message(0, "GETCSV(self, row, column, numRows, numCols, path)") + + def boolToFreq(self): + self.status.message(1, "boolToFreq(self)") + df = None + if self.dataset == "fm_mutations_independent": + df = boolMapToFreq.getBoolFrequencies(self.datapath) + elif self.dataset == "fm_sample_independent": + df = boolMapToFreq.getFrequencies(self.datapath) + else: + df = boolMapToFreq.getCSVFrequencies(self.datapath) + + self.status.message(0, "boolToFreq(self)") + return df + + def GETDATASETFILE(self): + self.status.message(1, "GETDATASETFILE(self)") + if self.dataset == "fm_mutations_independent": + self.status.message(0, "GETDATASETFILE(self)") + return "/home/skjena/data/fm_mutations_independent.tab" + + if self.dataset == "fm_sample_independent": + self.status.message(0, "GETDATASETFILE(self)") + return "/home/skjena/data/fm_sample_independent.tab" + + if self.dataset == "top10000LungMel": + self.status.message(0, "GETDATASETFILE(self)") + return "/home/skjena/cancerTherapy/modules/RawDB/scripts/top10000LungMel.csv" + + if self.dataset == "top1000LungMel": + self.status.message(0, "GETDATASETFILE(self)") + return "/home/skjena/cancerTherapy/modules/RawDB/scripts/top1000LungMel.csv" + + if self.dataset == "top100LungMel": + self.status.message(0, "GETDATASETFILE(self)") + return "/home/skjena/cancerTherapy/modules/RawDB/scripts/top100LungMel.csv" + + if self.dataset == "top10LungMel": + self.status.message(0, "GETDATASETFILE(self)") + return "/home/skjena/cancerTherapy/modules/RawDB/scripts/top10LungMel.csv" + + def GETSCALEDDATASETFILE(self): + self.status.message(1, "GETSCALEDDATASETFILE(self)") + if self.dataset == "fm_mutations_independent": + self.status.message(0, "GETSCALEDDATASETFILE(self)") + return "/home/skjena/data/scaled/fm_mutations_independent.csv" + + if self.dataset == "fm_sample_independent": + self.status.message(0, "GETSCALEDDATASETFILE(self)") + return "/home/skjena/data/scaled/fm_sample_independent.csv" + + if self.dataset == "top10000LungMel": + self.status.message(0, "GETSCALEDDATASETFILE(self)") + return "/home/skjena/data/scaled/top10000LungMel.csv" + + if self.dataset == "top1000LungMel": + self.status.message(0, "GETSCALEDDATASETFILE(self)") + return "/home/skjena/data/scaled/top1000LungMel.csv" + + if self.dataset == "top100LungMel": + self.status.message(0, "GETSCALEDDATASETFILE(self)") + return "/home/skjena/data/scaled/top100LungMel.csv" + + if self.dataset == "top10LungMel": + self.status.message(0, "GETSCALEDDATASETFILE(self)") + return "/home/skjena/data/scaled/top10LungMel.csv" + + def deleleDirAndContents(fileToDelete): + path = "/home/skjena/data/" + fileToDelete + "/" + shutil.rmtree(path)