From aad22b2b966ae5b2e63033c5a664c7cc88044eb4 Mon Sep 17 00:00:00 2001 From: Jomaro <jomaro.rodrigues@gmail.com> Date: Wed, 28 Oct 2015 12:48:40 -0200 Subject: [PATCH] =?UTF-8?q?os=20dois=20problemas=20b=C3=A1sicos=20de=20for?= =?UTF-8?q?mato=20agora=20s=C3=A3o=20tratados=20pelo=20sistema?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adega_crypt.py | 37 +++++++++++++++++++------------------ 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/adega_crypt.py b/adega_crypt.py index 0944da4..3d9b09e 100755 --- a/adega_crypt.py +++ b/adega_crypt.py @@ -72,6 +72,8 @@ def crypt(name): data = pd.read_csv('.'+name) + data.dropna(how='all', inplace=True) + if os.path.exists(TABLE_FILE): table = pd.read_csv(TABLE_FILE) else: @@ -80,7 +82,7 @@ def crypt(name): if not os.path.exists(dirname): os.makedirs(dirname) - table = pd.DataFrame(columns=["ID", "MATR_ALUNO", "NOME_PESSOA"]) + table = pd.DataFrame(columns=["ID", "MATR_ALUNO", "NOME_ALUNO"]) table.to_csv(TABLE_FILE, index=False) @@ -93,22 +95,24 @@ def crypt(name): # # se o novo relatório inclui o nome dos alunos vamos colocar isso - # no arquivo de correspondencia tambem + # no arquivo de correspondencia tambem, e tira-lo do arquivo original # - if "NOME_ALUNO" in data.columns: - data.rename(columns={'NOME_ALUNO': 'NOME_PESSOA'}, inplace=True) - - if "NOME_PESSOA" in data.columns: - - table_append = pd.merge(table_append, data[["MATR_ALUNO", "NOME_PESSOA"]], how="left", on="MATR_ALUNO") - - UTF8toupper = lambda s: s.decode("utf8").upper().encode("utf8") - - table_append["NOME_PESSOA"] = table_append.NOME_PESSOA.apply(UTF8toupper) - - else: - table_append["NOME_PESSOA"] = "" + for field in ["NOME_ALUNO", "NOME_PESSOA"]: + if field in data.columns: + + df = data[["MATR_ALUNO", field]].rename(columns={field: "NOME_ALUNO"}) + + table_append = pd.merge(table_append, df, how="left", on="MATR_ALUNO") + + UTF8toupper = lambda s: s.decode("utf8").upper().encode("utf8") + + table_append["NOME_ALUNO"] = table_append.NOME_ALUNO.apply(UTF8toupper) + + del data[field] + + if "NOME_ALUNO" not in table_append.columns: + table_append["NOME_ALUNO"] = "" # pega todos os registros que ainda não existem no table @@ -143,9 +147,6 @@ def crypt(name): del data["MATR_ALUNO"] - if "NOME_PESSOA" in data.columns: - del data["NOME_PESSOA"] - data.rename(columns={"ID": "MATR_ALUNO"}, inplace=True) -- GitLab