Kevin Meza Landeros

Update filtering.py

......@@ -8,9 +8,10 @@ __author__ = 'kevinml'
# Objective
# Take two column files and make 3 different files:
# 1.- <FileName>_1Word_NoGreek.txt - Archivo donde la primer columna es unipalabra y SOLO contiene numeros alfanumericos.
# 2.- <FileName>_Words_NoGreek.tx - Archivo donde la primer columna es multipalabra y SOLO contiene numeros alfanumericos.
# 3.- <FileName>_1Word_Greek.txt - Archivo donde la primer columna es unipalabra y contiene caracteres NO alfanumericos.
# 1.- OneWord_Alphanum.txt - Archivo donde la primer columna es unipalabra y SOLO contiene numeros alfanumericos.
# 2.- MultWord_Alphanum.txt - Archivo donde la primer columna es multipalabra y SOLO contiene caracteres alfanumericos.
# 3.- OneWord_NOAlphanum.txt - Archivo donde la primer columna es unipalabra y contiene caracteres NO alfanumericos.
# 4.- MultWord_NOAlphanum.txt - Archivo donde la primer columna es multipalabra y SOLO contiene caracteres alfanumericos.
#
# Input parameters
# --inputPath=PATH Path of inputfiles.
......@@ -63,7 +64,7 @@ if __name__ == '__main__':
conditions = []
lines = []
# Se abre el primer archivo
with open (os.path.join(args.outputPath,str(args.iFile[:-4]) + "_1Word_NoGreek.txt"), "w+") as oFile:
with open (os.path.join(args.outputPath,"OneWord_Alphanum.txt"), "w+") as oFile:
for index, row in file.iterrows():
if len(row[0].split(" ")) == 1 and alphanum_and_NOGreek(str(row[0].split(" ")[0])) == True: # Se verifica que en la primer columna solo haya un palabra y que esta solo tenga caracteres alfanumericos.
conditions.append(row[0])
......@@ -72,20 +73,20 @@ if __name__ == '__main__':
for i in range(len(lines)):
oFile.write(conditions[i] + "\t" + lines[i] + '\n')
print("\nArchivo de contenidos de una sola palabra ha sido generado. NOTA: Se han excluido letras griegas.\nNombre del archivo:" + str(args.iFile[:-4]) + "_1Word_NoGreek.txt\n")
print("\nArchivo de contenidos de una sola palabra ha sido generado. NOTA: Se han excluido letras NO alfanumericas.\nNombre del archivo: OneWord_Alphanum.txt\n")
print("#######################\n# SEGUNDO ARCHIVO #\n#######################")
conditions_2 = []
lines_2 = []
# Se abre el segundo archivo
with open (os.path.join(args.outputPath,str(args.iFile[:-4]) + "_Words_NoGreek.txt"), "w+") as oFile:
with open (os.path.join(args.outputPath,"MultWord_Alphanum.txt"), "w+") as oFile:
for index, row in file.iterrows():
# La bandera en 1 indica que ninguna palabra de la primer columna tiene caracteres NO alfanumericos
# La bandera en 0 indica que al menos una palabra tienes caracteres NO alfanumericos.
bandera = 1
# Con el for se va a verificando la presencia de caracteres alfanumericos en cada palabra de la primera columna
for i in range(0, len(row[0].split(" "))):
if alphanum_and_NOGreek(str(row[0].split(" ")[i])) == False:
if len(row[0].split(" ")) != 1 and alphanum_and_NOGreek(str(row[0].split(" ")[i])) == False:
bandera = 0
if bandera == 1:
conditions_2.append(row[0])
......@@ -94,13 +95,13 @@ if __name__ == '__main__':
for i in range(len(lines_2)):
oFile.write(conditions_2[i] + "\t" + lines_2[i] + '\n')
print("\nArchivo de contenidos de varias palabras ha sido generado. NOTA: Se han excluido letras griegas.\nNombre del archivo:" + str(args.iFile[:-4]) + "SeveralWords_NoGreek_Filter\n")
print("\nArchivo de contenidos de varias palabras ha sido generado. NOTA: Se han excluido letras NO alfanumericas.\nNombre del archivo: MultWord_Alphanum.txt")
print("######################\n# TERCER ARCHIVO #\n######################")
conditions_3 = []
lines_3 = []
# Se abre el tercer archivo
with open (os.path.join(args.outputPath,str(args.iFile[:-4]) + "_1Word_Greek.txt"), "w+") as oFile:
with open (os.path.join(args.outputPath,"OneWord_NOAlphanum.txt"), "w+") as oFile:
for index, row in file.iterrows():
# Se verifica que la primer columna sea unipalabra.
if len(row[0].split(" ")) == 1:
......@@ -110,4 +111,20 @@ if __name__ == '__main__':
for i in range(len(lines_3)):
oFile.write(conditions_3[i] + "\t" + lines_3[i] + '\n')
print("\nArchivo de contenidos de una palabra ha sido generado:.nNombre del archivo:" + str(args.iFile[:-4]) + "SeveralWords_Greek_Filter\n")
\ No newline at end of file
print("\nArchivo de contenidos de una palabra ha sido generado.\nNombre del archivo: OneWord_NOAlphanum.txt\n")
print("#######################\n# CUARTO ARCHIVO #\n#######################")
conditions_4 = []
lines_4 = []
# Se abre el cuarto archivo
with open (os.path.join(args.outputPath,"MultWord_NOAlphanum.txt"), "w+") as oFile:
for index, row in file.iterrows():
# Se verifica que la primer columna sea multipalabra.
if len(row[0].split(" ")) != 1:
conditions_4.append(row[0])
lines_4.append(row[1])
# Se escriben en el primer archivo aquellos valores que cumplen las condiciones.
for i in range(len(lines_4)):
oFile.write(conditions_4[i] + "\t" + lines_4[i] + '\n')
print("\nArchivo de contenidos de varias palabras ha sido generado.\nNombre del archivo: MultWord_NOAlphanum.txt")
\ No newline at end of file
......