From bd907b30429600ae6e24612c7c5c5eef33bf25be Mon Sep 17 00:00:00 2001 From: Felipe Netto Date: Thu, 21 Dec 2017 22:09:04 -0300 Subject: [PATCH 1/4] =?UTF-8?q?Implementacao=20de=20m=C3=B3dulo=20para=20m?= =?UTF-8?q?anipulacao=20de=20arquivos=20JSON=20e=20CSV?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- csv_generator.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 csv_generator.py diff --git a/csv_generator.py b/csv_generator.py new file mode 100644 index 0000000..55812a0 --- /dev/null +++ b/csv_generator.py @@ -0,0 +1,21 @@ +import pandas as pd + + +def json_to_csv(json_path): + return pd.read_json(json_path) + + +def merge_csv(csv_a, csv_b, columns): + return csv_a.merge(csv_b, on=columns) + + +def generate_file_from_json_and_csv(json_path, csv_path, columns): + csv_a = json_to_csv(json_path) + csv_b = pd.read_csv(csv_path) + + database = merge_csv(csv_a, csv_b, columns) + database.to_csv('database.csv', index=False) + + +if __name__ == '__main__': + generate_file_from_json_and_csv('pytan_series.json', 'via_lactea_series.csv', ['name', 'year']) From 6c5ca86bc59aa1097459e40034e34d65b31b605f Mon Sep 17 00:00:00 2001 From: Felipe Netto Date: Thu, 21 Dec 2017 22:13:52 -0300 Subject: [PATCH 2/4] Adicionando arquivo para download de dependencias --- requirements.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 requirements.txt diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..712d1e5 --- /dev/null +++ b/requirements.txt @@ -0,0 +1 @@ +pandas==0.20.3 From 97c71f8fb35e0897c2821a519054d837f5955c66 Mon Sep 17 00:00:00 2001 From: Felipe Netto Date: Thu, 21 Dec 2017 22:30:31 -0300 Subject: [PATCH 3/4] Parametrizando nome de CSV gerado para tornar funcao mais generica --- csv_generator.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/csv_generator.py b/csv_generator.py index 55812a0..27805f7 100644 --- a/csv_generator.py +++ b/csv_generator.py @@ -9,13 +9,13 @@ def merge_csv(csv_a, csv_b, columns): return csv_a.merge(csv_b, on=columns) -def generate_file_from_json_and_csv(json_path, csv_path, columns): +def generate_file_from_json_and_csv(json_path, csv_path, file_name, columns): csv_a = json_to_csv(json_path) csv_b = pd.read_csv(csv_path) - database = merge_csv(csv_a, csv_b, columns) - database.to_csv('database.csv', index=False) + file = merge_csv(csv_a, csv_b, columns) + file.to_csv(file_name, index=False) if __name__ == '__main__': - generate_file_from_json_and_csv('pytan_series.json', 'via_lactea_series.csv', ['name', 'year']) + generate_file_from_json_and_csv('pytan_series.json', 'via_lactea_series.csv', 'database.csv', ['name', 'year']) From 0bd3c752a6bba00baefc2327a8aa72f800eb7517 Mon Sep 17 00:00:00 2001 From: Felipe Netto Date: Thu, 21 Dec 2017 22:42:07 -0300 Subject: [PATCH 4/4] =?UTF-8?q?Refatorando=20c=C3=B3digo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- csv_generator.py | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/csv_generator.py b/csv_generator.py index 27805f7..9a91f6e 100644 --- a/csv_generator.py +++ b/csv_generator.py @@ -1,19 +1,11 @@ import pandas as pd -def json_to_csv(json_path): - return pd.read_json(json_path) - - -def merge_csv(csv_a, csv_b, columns): - return csv_a.merge(csv_b, on=columns) - - def generate_file_from_json_and_csv(json_path, csv_path, file_name, columns): - csv_a = json_to_csv(json_path) + csv_a = pd.read_json(json_path) csv_b = pd.read_csv(csv_path) - file = merge_csv(csv_a, csv_b, columns) + file = csv_a.merge(csv_b, on=columns) file.to_csv(file_name, index=False)