import os import pandas as pd import random #%% Opr=['++', '--', '+', '-', '*', '/', '%','&&', '||', '!','==', '!=', '<', '>', '<=', '>=', '=', '(', ')', '{', '}'] ProjectNames=['EclipseJDTCore', 'Equinox-3.4', 'lucene-2.4', 'Mylyn-3.1', 'PDE_UI 3.4.1'] # ProjectNames=['EclipseJDTCore'] for p in ProjectNames: ProjectFolder="//Volumes//DriveB//DrBilal//Zips//"+p df = pd.DataFrame(columns =['Class']+Opr+['TotalAOpr','DistinctAOpr', 'TotalROpr', 'DistinctROpr', 'TotalLOpr', 'DistinctLOpr', 'TotalOthers', 'DistinctOthers', 'TotalOpr', 'DistinctOpr']) ListOfAllFiles=[] for path, subdirs, files in os.walk(ProjectFolder): for name in files: if ".java" in name: ListOfAllFiles.append(os.path.join(path, name)) for javafile in ListOfAllFiles: Row = [] try: print(javafile) f = open(javafile, "r") fileContent = f.read() Row.append(javafile) for A in Opr: count = fileContent.count(A) Row.append(count) fileContent = fileContent.replace(A, "") Row.append(sum(Row[1:8])) #totalAOpr Row.append(sum([1 if i else 0 for i in Row[1:8]])) #totalAOpr Row.append(sum(Row[8:11])) #total LOpr Row.append(sum([1 if i else 0 for i in Row[8:11]])) #totalAOpr Row.append(sum(Row[11:17])) #total ROpr Row.append(sum([1 if i else 0 for i in Row[11:17]])) #totalAOpr Row.append(sum(Row[17:22])) #total others Row.append(sum([1 if i else 0 for i in Row[17:22]])) #totalothers Row.append(sum(Row[1:22])) #total all opr Row.append(sum([1 if i else 0 for i in Row[1:22]])) #distinct opr df.loc[len(df)] = Row f.close() except: continue; df.to_csv("//Volumes//DriveB//DrBilal//"+p+".csv", index=False) #%% ProjectNames=['EclipseJDTCore', 'Equinox-3.4', 'lucene-2.4', 'Mylyn-3.1', 'PDE_UI 3.4.1'] for p in ProjectNames: df = pd.read_csv("//Volumes//DriveB//DrBilal//"+p+".csv") randomlist = [] for i in range(0,len(df)): n = random.randint(1,50) if(n>30): n=0 randomlist.append(n) df['NoOfFaults'] = randomlist df.to_csv("//Volumes//DriveB//DrBilal//"+p+".csv", index=False) #%% ProjectNames=['EclipseJDTCore', 'Equinox-3.4', 'lucene-2.4', 'Mylyn-3.1', 'PDE_UI 3.4.1'] for p in ProjectNames: df = pd.read_csv("//Volumes//DriveB//DrBilal//"+p+".csv") df.describe().to_csv("//Volumes//DriveB//DrBilal//Statistics_"+p+".csv") #%%