salvando
This commit is contained in:
@@ -1,385 +1,12 @@
|
||||
CODIGO;DECENDIO;AMPLITUDE;ANO
|
||||
2244035;3DSEP;2;1980
|
||||
2244035;3DOCT;2;1980
|
||||
2244035;1DNOV;1;1980
|
||||
2244035;2DNOV;1;1980
|
||||
2244035;3DNOV;1;1980
|
||||
2244035;1DDEC;1;1980
|
||||
2244035;2DDEC;1;1980
|
||||
2244035;1DJAN;1;1981
|
||||
2244035;1DFEB;1;1981
|
||||
2244035;3DFEB;3;1981
|
||||
2244035;2DFEB;3;1981
|
||||
2143011;1DOCT;2;1980
|
||||
2143011;2DOCT;1;1980
|
||||
2143011;1DNOV;2;1980
|
||||
2143011;2DNOV;1;1980
|
||||
2143011;3DNOV;1;1980
|
||||
2143011;2DDEC;1;1980
|
||||
2143011;1DJAN;1;1981
|
||||
2143011;2DJAN;1;1981
|
||||
2143011;2DFEB;1;1981
|
||||
2143011;3DMAR;1;1981
|
||||
2142002;1DOCT;2;1980
|
||||
2142002;2DOCT;1;1980
|
||||
2142002;3DOCT;1;1980
|
||||
2142002;1DNOV;1;1980
|
||||
2142002;2DNOV;1;1980
|
||||
2142002;3DNOV;1;1980
|
||||
2142002;2DDEC;1;1980
|
||||
2142002;1DJAN;1;1981
|
||||
2142002;2DJAN;1;1981
|
||||
2142002;3DJAN;2;1981
|
||||
2142014;3DSEP;2;1980
|
||||
2142014;1DOCT;2;1980
|
||||
2142014;3DOCT;3;1980
|
||||
2142014;1DNOV;3;1980
|
||||
2142014;2DNOV;1;1980
|
||||
2142014;3DNOV;1;1980
|
||||
2142014;3DNOV;1;1980
|
||||
2142014;3DDEC;2;1980
|
||||
2142014;1DJAN;1;1981
|
||||
2142014;2DJAN;1;1981
|
||||
2142014;1DFEB;1;1981
|
||||
2142014;2DFEB;2;1981
|
||||
2143023;1DNOV;1;2009
|
||||
2143023;3DNOV;1;2009
|
||||
2143023;1DJAN;1;2010
|
||||
2143023;2DJAN;1;2010
|
||||
2143023;2DJAN;1;2010
|
||||
2143023;1DFEB;2;2010
|
||||
2143023;2DFEB;1;2010
|
||||
2143023;3DFEB;1;2010
|
||||
2143023;2DMAR;1;2010
|
||||
2143023;3DMAR;1;2010
|
||||
2244039;2DSEP;1;1980
|
||||
2244039;1DOCT;1;1980
|
||||
2244039;3DOCT;1;1980
|
||||
2244039;1DNOV;1;1980
|
||||
2244039;2DNOV;1;1980
|
||||
2244039;3DNOV;1;1980
|
||||
2244039;2DJAN;1;1981
|
||||
2244039;2DFEB;1;1981
|
||||
2244039;2DAPR;1;1981
|
||||
2244039;3DAPR;1;1981
|
||||
2143001;3DSEP;2;1980
|
||||
2143001;1DOCT;2;1980
|
||||
2143001;3DOCT;3;1980
|
||||
2143001;1DNOV;3;1980
|
||||
2143001;2DNOV;1;1980
|
||||
2143001;3DNOV;1;1980
|
||||
2143001;2DDEC;1;1980
|
||||
2143001;1DJAN;1;1981
|
||||
2143001;2DJAN;1;1981
|
||||
2143001;3DJAN;1;1981
|
||||
2143001;1DFEB;1;1981
|
||||
2143001;2DFEB;2;1981
|
||||
2143001;3DFEB;2;1981
|
||||
2143017;3DOCT;3;1980
|
||||
2143017;2DOCT;3;1980
|
||||
2143017;2DNOV;1;1980
|
||||
2143017;3DNOV;1;1980
|
||||
2143017;2DDEC;1;1980
|
||||
2143017;3DDEC;1;1980
|
||||
2143017;1DJAN;1;1981
|
||||
2143017;2DJAN;1;1981
|
||||
2143017;3DJAN;1;1981
|
||||
2143017;1DFEB;1;1981
|
||||
2143017;2DFEB;3;1981
|
||||
2143017;3DFEB;3;1981
|
||||
2143016;3DSEP;2;1980
|
||||
2143016;3DOCT;3;1980
|
||||
2143016;2DOCT;3;1980
|
||||
2143016;2DNOV;1;1980
|
||||
2143016;3DNOV;1;1980
|
||||
2143016;2DDEC;1;1980
|
||||
2143016;1DJAN;1;1981
|
||||
2143016;2DJAN;1;1981
|
||||
2143016;3DJAN;1;1981
|
||||
2143016;3DFEB;2;1981
|
||||
2143016;2DMAR;1;1981
|
||||
2243202;3DSEP;1;1980
|
||||
2243202;2DOCT;1;1980
|
||||
2243202;3DOCT;1;1980
|
||||
2243202;1DNOV;1;1980
|
||||
2243202;2DNOV;1;1980
|
||||
2243202;3DNOV;1;1980
|
||||
2243202;2DDEC;1;1980
|
||||
2243202;2DJAN;1;1981
|
||||
2243202;2DFEB;1;1981
|
||||
2243202;3DFEB;1;1981
|
||||
2142008;3DSEP;1;1980
|
||||
2142008;1DOCT;1;1980
|
||||
2142008;3DOCT;2;1980
|
||||
2142008;2DNOV;1;1980
|
||||
2142008;3DNOV;1;1980
|
||||
2142008;3DDEC;2;1980
|
||||
2142008;1DJAN;1;1981
|
||||
2142008;2DJAN;1;1981
|
||||
2142008;1DFEB;2;1981
|
||||
2142008;2DFEB;2;1981
|
||||
2142008;3DFEB;1;1981
|
||||
2142000;3DSEP;1;1980
|
||||
2142000;1DOCT;1;1980
|
||||
2142000;3DOCT;3;1980
|
||||
2142000;1DNOV;3;1980
|
||||
2142000;2DNOV;1;1980
|
||||
2142000;3DNOV;1;1980
|
||||
2142000;3DDEC;1;1980
|
||||
2142000;1DJAN;1;1981
|
||||
2142000;2DJAN;1;1981
|
||||
2142000;1DFEB;1;1981
|
||||
2142000;2DFEB;1;1981
|
||||
2242028;2DSEP;1;1980
|
||||
2242028;3DSEP;2;1980
|
||||
2242028;1DOCT;1;1980
|
||||
2242028;2DOCT;2;1980
|
||||
2242028;3DOCT;2;1980
|
||||
2242028;2DNOV;1;1980
|
||||
2242028;3DDEC;2;1980
|
||||
2242028;3DJAN;1;1981
|
||||
2242028;1DFEB;2;1981
|
||||
2242028;2DFEB;1;1981
|
||||
2244038;2DSEP;1;1980
|
||||
2244038;3DSEP;1;1980
|
||||
2244038;1DOCT;1;1980
|
||||
2244038;2DOCT;1;1980
|
||||
2244038;3DOCT;1;1980
|
||||
2244038;1DNOV;1;1980
|
||||
2244038;2DNOV;1;1980
|
||||
2244038;2DDEC;1;1980
|
||||
2244038;2DFEB;1;1981
|
||||
2244038;2DAPR;1;1981
|
||||
2243008;2DSEP;1;1980
|
||||
2243008;1DOCT;2;1980
|
||||
2243008;3DOCT;2;1980
|
||||
2243008;1DNOV;1;1980
|
||||
2243008;2DNOV;1;1980
|
||||
2243008;3DNOV;1;1980
|
||||
2243008;2DDEC;1;1980
|
||||
2243008;1DJAN;1;1981
|
||||
2243008;2DJAN;1;1981
|
||||
2243008;1DFEB;1;1981
|
||||
2142004;3DSEP;1;1980
|
||||
2142004;1DOCT;2;1980
|
||||
2142004;2DOCT;1;1980
|
||||
2142004;3DOCT;1;1980
|
||||
2142004;1DNOV;1;1980
|
||||
2142004;3DNOV;1;1980
|
||||
2142004;2DDEC;1;1980
|
||||
2142004;1DJAN;1;1981
|
||||
2142004;3DJAN;1;1981
|
||||
2142004;1DFEB;1;1981
|
||||
2142006;3DSEP;1;1980
|
||||
2142006;1DOCT;2;1980
|
||||
2142006;3DOCT;2;1980
|
||||
2142006;1DNOV;1;1980
|
||||
2142006;3DNOV;1;1980
|
||||
2142006;3DDEC;1;1980
|
||||
2142006;1DJAN;1;1981
|
||||
2142006;2DJAN;1;1981
|
||||
2142006;1DFEB;1;1981
|
||||
2142006;2DFEB;1;1981
|
||||
2143070;2DOCT;2;2002
|
||||
2143070;1DOCT;2;2002
|
||||
2143070;3DOCT;1;2002
|
||||
2143070;1DNOV;1;2002
|
||||
2143070;1DNOV;1;2002
|
||||
2143070;3DNOV;1;2002
|
||||
2143070;3DNOV;1;2002
|
||||
2143070;1DDEC;1;2002
|
||||
2143070;1DJAN;1;2003
|
||||
2143070;1DFEB;2;2003
|
||||
2143070;3DFEB;2;2003
|
||||
2143070;1DMAR;2;2003
|
||||
2244058;2DSEP;1;1980
|
||||
2244058;1DOCT;1;1980
|
||||
2244058;3DOCT;1;1980
|
||||
2244058;2DNOV;1;1980
|
||||
2244058;2DDEC;1;1980
|
||||
2244058;2DFEB;1;1981
|
||||
2244058;2DAPR;1;1981
|
||||
2244058;3DAPR;1;1981
|
||||
2244058;3DAPR;1;1981
|
||||
2244058;1DOCT;1;1981
|
||||
2142009;1DOCT;1;1980
|
||||
2142009;1DOCT;1;1980
|
||||
2142009;3DOCT;2;1980
|
||||
2142009;2DOCT;2;1980
|
||||
2142009;2DNOV;1;1980
|
||||
2142009;3DNOV;1;1980
|
||||
2142009;3DNOV;1;1980
|
||||
2142009;1DJAN;1;1981
|
||||
2142009;1DJAN;1;1981
|
||||
2142009;2DJAN;1;1981
|
||||
2142009;3DJAN;1;1981
|
||||
2143019;3DOCT;1;1981
|
||||
2143019;3DNOV;1;1981
|
||||
2143019;3DDEC;1;1981
|
||||
2143019;2DJAN;1;1982
|
||||
2143019;2DFEB;1;1982
|
||||
2143019;2DFEB;1;1982
|
||||
2143019;1DAPR;1;1982
|
||||
2143019;3DSEP;1;1982
|
||||
2143019;2DOCT;2;1982
|
||||
2143019;1DNOV;1;1982
|
||||
2143003;3DSEP;2;1980
|
||||
2143003;1DOCT;2;1980
|
||||
2143003;3DOCT;2;1980
|
||||
2143003;1DNOV;1;1980
|
||||
2143003;3DNOV;1;1980
|
||||
2143003;2DDEC;1;1980
|
||||
2143003;1DJAN;1;1981
|
||||
2143003;2DJAN;1;1981
|
||||
2143003;1DFEB;1;1981
|
||||
2143003;2DFEB;2;1981
|
||||
2143003;3DFEB;1;1981
|
||||
2143062;3DSEP;2;1989
|
||||
2143062;1DOCT;1;1989
|
||||
2143062;2DOCT;1;1989
|
||||
2143062;3DOCT;1;1989
|
||||
2143062;1DNOV;1;1989
|
||||
2143062;2DNOV;1;1989
|
||||
2143062;3DNOV;1;1989
|
||||
2143062;1DDEC;1;1989
|
||||
2143062;3DDEC;1;1989
|
||||
2143062;1DJAN;1;1990
|
||||
2142007;3DSEP;1;1980
|
||||
2142007;1DOCT;2;1980
|
||||
2142007;3DOCT;2;1980
|
||||
2142007;2DNOV;1;1980
|
||||
2142007;3DNOV;1;1980
|
||||
2142007;1DDEC;1;1980
|
||||
2142007;3DDEC;1;1980
|
||||
2142007;1DJAN;1;1981
|
||||
2142007;2DJAN;1;1981
|
||||
2142007;1DFEB;1;1981
|
||||
2042014;3DSEP;1;1980
|
||||
2042014;1DOCT;2;1980
|
||||
2042014;3DOCT;2;1980
|
||||
2042014;1DNOV;1;1980
|
||||
2042014;3DNOV;1;1980
|
||||
2042014;2DDEC;1;1980
|
||||
2042014;1DJAN;1;1981
|
||||
2042014;2DJAN;1;1981
|
||||
2042014;1DFEB;2;1981
|
||||
2042014;2DFEB;1;1981
|
||||
2143018;3DSEP;2;1980
|
||||
2143018;3DOCT;3;1980
|
||||
2143018;2DOCT;3;1980
|
||||
2143018;2DNOV;1;1980
|
||||
2143018;3DNOV;1;1980
|
||||
2143018;3DDEC;1;1980
|
||||
2143018;1DJAN;1;1981
|
||||
2143018;2DJAN;1;1981
|
||||
2143018;1DFEB;1;1981
|
||||
2143018;3DFEB;2;1981
|
||||
2143018;2DMAR;1;1981
|
||||
2042000;3DSEP;1;1980
|
||||
2042000;1DOCT;2;1980
|
||||
2042000;3DSEP;2;1980
|
||||
2042000;3DOCT;2;1980
|
||||
2042000;1DNOV;1;1980
|
||||
2042000;3DNOV;1;1980
|
||||
2042000;2DDEC;1;1980
|
||||
2042000;1DJAN;1;1981
|
||||
2042000;2DJAN;1;1981
|
||||
2042000;1DFEB;2;1981
|
||||
2042000;3DJAN;2;1981
|
||||
2042000;2DFEB;1;1981
|
||||
2142001;3DSEP;1;1980
|
||||
2142001;3DOCT;2;1980
|
||||
2142001;1DNOV;1;1980
|
||||
2142001;3DNOV;1;1980
|
||||
2142001;1DDEC;1;1980
|
||||
2142001;2DDEC;1;1980
|
||||
2142001;2DJAN;1;1981
|
||||
2142001;1DFEB;1;1981
|
||||
2142001;2DFEB;2;1981
|
||||
2142001;3DFEB;1;1981
|
||||
2143020;3DSEP;2;1980
|
||||
2143020;3DOCT;3;1980
|
||||
2143020;1DNOV;3;1980
|
||||
2143020;2DNOV;1;1980
|
||||
2143020;3DNOV;1;1980
|
||||
2143020;3DDEC;1;1980
|
||||
2143020;1DJAN;1;1981
|
||||
2143020;2DJAN;1;1981
|
||||
2143020;2DFEB;2;1981
|
||||
2143020;3DFEB;1;1981
|
||||
2143020;2DMAR;1;1981
|
||||
2142077;2DSEP;2;2005
|
||||
2142077;3DSEP;2;2005
|
||||
2142077;1DOCT;2;2005
|
||||
2142077;2DOCT;2;2005
|
||||
2142077;3DOCT;1;2005
|
||||
2142077;3DNOV;1;2005
|
||||
2142077;3DNOV;1;2005
|
||||
2142077;2DDEC;1;2005
|
||||
2142077;3DDEC;1;2005
|
||||
2142077;2DJAN;3;2006
|
||||
2142077;3DJAN;3;2006
|
||||
2142077;1DOCT;2;2006
|
||||
2142077;3DOCT;1;2006
|
||||
2143022;3DSEP;1;1980
|
||||
2143022;1DOCT;1;1980
|
||||
2143022;3DOCT;3;1980
|
||||
2143022;1DNOV;3;1980
|
||||
2143022;2DNOV;1;1980
|
||||
2143022;3DNOV;1;1980
|
||||
2143022;2DDEC;1;1980
|
||||
2143022;1DJAN;1;1981
|
||||
2143022;2DJAN;1;1981
|
||||
2143022;1DFEB;1;1981
|
||||
2143022;2DFEB;2;1981
|
||||
2244036;1DOCT;2;1980
|
||||
2244036;2DOCT;1;1980
|
||||
2244036;3DOCT;1;1980
|
||||
2244036;1DNOV;1;1980
|
||||
2244036;2DNOV;1;1980
|
||||
2244036;3DNOV;1;1980
|
||||
2244036;1DDEC;1;1980
|
||||
2244036;2DDEC;1;1980
|
||||
2244036;1DJAN;1;1981
|
||||
2244036;2DFEB;2;1981
|
||||
2244047;2DSEP;1;1980
|
||||
2244047;1DOCT;1;1980
|
||||
2244047;3DOCT;1;1980
|
||||
2244047;1DNOV;1;1980
|
||||
2244047;2DNOV;1;1980
|
||||
2244047;2DFEB;1;1981
|
||||
2244047;2DMAR;1;1981
|
||||
2244047;2DAPR;1;1981
|
||||
2244047;3DAPR;1;1981
|
||||
2244047;2DSEP;1;1981
|
||||
2143000;3DSEP;1;1980
|
||||
2143000;1DOCT;2;1980
|
||||
2143000;3DOCT;2;1980
|
||||
2143000;1DNOV;1;1980
|
||||
2143000;2DNOV;1;1980
|
||||
2143000;3DNOV;1;1980
|
||||
2143000;2DDEC;1;1980
|
||||
2143000;1DJAN;1;1981
|
||||
2143000;2DJAN;1;1981
|
||||
2143000;1DFEB;1;1981
|
||||
2143021;3DSEP;2;1980
|
||||
2143021;2DOCT;1;1980
|
||||
2143021;3DOCT;2;1980
|
||||
2143021;2DNOV;2;1980
|
||||
2143021;3DNOV;1;1980
|
||||
2143021;1DDEC;1;1980
|
||||
2143021;2DDEC;1;1980
|
||||
2143021;1DJAN;1;1981
|
||||
2143021;2DJAN;1;1981
|
||||
2143021;1DFEB;2;1981
|
||||
2143013;3DSEP;1;1980
|
||||
2143013;1DOCT;1;1980
|
||||
2143013;3DOCT;3;1980
|
||||
2143013;1DNOV;3;1980
|
||||
2143013;2DNOV;1;1980
|
||||
2143013;3DNOV;1;1980
|
||||
2143013;2DDEC;1;1980
|
||||
2143013;2DDEC;1;1980
|
||||
2143013;1DJAN;1;1981
|
||||
2143013;2DJAN;1;1981
|
||||
2143013;1DFEB;1;1981
|
||||
CODIGO;DECENDIO;KEY;AMPLITUDE;ANO
|
||||
2244035;3DSEP;3DSEP1980;2;1980
|
||||
2244035;3DOCT;3DOCT1980;2;1980
|
||||
2244035;1DNOV;1DNOV1980;1;1980
|
||||
2244035;2DNOV;2DNOV1980;1;1980
|
||||
2244035;3DNOV;3DNOV1980;1;1980
|
||||
2244035;1DDEC;1DDEC1980;1;1980
|
||||
2244035;2DDEC;2DDEC1980;1;1980
|
||||
2244035;1DJAN;1DJAN1981;1;1981
|
||||
2244035;1DFEB;1DFEB1981;1;1981
|
||||
2244035;3DFEB;3DFEB1981;3;1981
|
||||
2244035;2DFEB;2DFEB1981;3;1981
|
||||
|
||||
|
@@ -1,2 +0,0 @@
|
||||
CODIGO;1DDEC;1DFEB;1DJAN;1DNOV;2DDEC;2DFEB;2DNOV;3DFEB;3DNOV;3DOCT;3DSEP
|
||||
2244035;1;1;1;1;1;3;1;3;1;2;2
|
||||
|
1081
47descendiofinal/2244035.csv
Normal file
1081
47descendiofinal/2244035.csv
Normal file
File diff suppressed because it is too large
Load Diff
10
app.py
10
app.py
@@ -13,7 +13,8 @@ def mostrar_menu():
|
||||
print("----------------------------------------------------------------")
|
||||
print("41 - Processar veranicos com estacao chuvosa")
|
||||
print("42 - Processar Classicação veranicos")
|
||||
print("43 - Transformar veranicos")
|
||||
print("47 - gerar matriz veranicos csv vinal")
|
||||
print("51 - gerar matriz PREENCHIDA vinal")
|
||||
print("----------------------------------------------------------------")
|
||||
print("0 - Sair")
|
||||
|
||||
@@ -43,8 +44,11 @@ def main():
|
||||
elif opcao == "42":
|
||||
classificacao_veranicos.processar_Classificao_Veranicos()
|
||||
|
||||
elif opcao == "43":
|
||||
classificacao_veranicos.transformar_decendio()
|
||||
elif opcao == "47":
|
||||
classificacao_veranicos.gerarmatrizembraco()
|
||||
|
||||
elif opcao == "51":
|
||||
classificacao_veranicos.gerarmatrizfinal()
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -4,6 +4,9 @@ import numpy as np
|
||||
from time import sleep
|
||||
from datetime import datetime
|
||||
import csv
|
||||
from odf.opendocument import OpenDocumentSpreadsheet
|
||||
from odf.table import Table, TableRow, TableCell
|
||||
from odf.text import P
|
||||
|
||||
|
||||
def listar_csvs(diretorio):
|
||||
@@ -68,7 +71,7 @@ def rodar_decendio(decendios,qtd_veranicos, estacoes, file):
|
||||
print("Decendio...")
|
||||
|
||||
|
||||
#estacoes= [2244035]
|
||||
estacoes= [2244035]
|
||||
#decendios = decendios.head(24)
|
||||
resultados = []
|
||||
|
||||
@@ -84,8 +87,6 @@ def rodar_decendio(decendios,qtd_veranicos, estacoes, file):
|
||||
data_inicio = pd.to_datetime(selecao_estacao['INICIO'])
|
||||
data_fim = pd.to_datetime(selecao_estacao['FINAL'])
|
||||
|
||||
|
||||
|
||||
filtro = decendios[(decendios['INICIO'] <= data_fim) & (decendios['FINAL'] >= data_inicio)]
|
||||
|
||||
dia =selecao_estacao['QTDDIAS']
|
||||
@@ -94,13 +95,8 @@ def rodar_decendio(decendios,qtd_veranicos, estacoes, file):
|
||||
filtro['dias_decendio'] = 0
|
||||
filtro['amplitude'] =classificar_aplitude(dia)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
diferenca=diferenca_dias(data_inicio, data_fim)+1
|
||||
|
||||
|
||||
quantidade_veranicos = len(filtro) # Conta o número de linhas
|
||||
print(index,"- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -")
|
||||
print ('estacao: ',selecao_estacao , ' Qtd Dias: ', diferenca)
|
||||
@@ -183,6 +179,7 @@ def rodar_decendio(decendios,qtd_veranicos, estacoes, file):
|
||||
dados.append({
|
||||
'CODIGO': selecao_estacao['CODIGO'],
|
||||
'DECENDIO': row['DECENDIO'],
|
||||
'KEY': row['DECENDIO'] + str(pd.to_datetime(row['INICIO']).year),
|
||||
'AMPLITUDE': row['amplitude'],
|
||||
'ANO': pd.to_datetime(row['INICIO']).year,
|
||||
})
|
||||
@@ -200,7 +197,6 @@ def rodar_decendio(decendios,qtd_veranicos, estacoes, file):
|
||||
|
||||
|
||||
|
||||
|
||||
def transformar_decendio():
|
||||
|
||||
origem = '42veranicosclassificacao'
|
||||
@@ -211,17 +207,159 @@ def transformar_decendio():
|
||||
df = pd.read_csv("./42veranicosclassificacao/"+file, sep=";")
|
||||
df_pivot = df.pivot(index="CODIGO", columns="DECENDIO", values="AMPLITUDE")
|
||||
|
||||
|
||||
#df_pivot.reset_index(inplace=True)
|
||||
#df_pivot.to_csv("./43descendiofinal/final"+file, sep=";", encoding="utf-8", index=False)
|
||||
|
||||
|
||||
#Definir o ano hidrológico
|
||||
def calcular_ano_hidrologico(data):
|
||||
ano_atual = data.year
|
||||
if data.month >= 9: # Setembro a Dezembro -> Ano atual/Ano seguinte
|
||||
return f"{ano_atual}/{ano_atual + 1}"
|
||||
else: # Janeiro a Abril -> Ano anterior/Ano atual
|
||||
return f"{ano_atual - 1}/{ano_atual}"
|
||||
import pandas as pd
|
||||
|
||||
|
||||
def gerarmatrizembraco():
|
||||
print("gerar csv 45 ano veranicos..")
|
||||
origem = '42veranicosclassificacao'
|
||||
files = listar_csvs(origem)
|
||||
|
||||
for file in files:
|
||||
print(f"Encontrada pasta: ./{origem}/{file}")
|
||||
estacao = pd.read_csv(f"./{origem}/{file}", delimiter=";", encoding="utf-8")
|
||||
codigos = estacao['CODIGO'].unique()
|
||||
|
||||
for codigo in codigos:
|
||||
print(codigo)
|
||||
ano_hidrologico = pd.read_csv("./decendio.csv", sep=";")
|
||||
# Converter INICIO para datetime
|
||||
ano_hidrologico["INICIO"] = pd.to_datetime(ano_hidrologico["INICIO"], format="%d/%m/%Y")
|
||||
# Criar coluna Decendio2 corretamente
|
||||
ano_hidrologico["KEY"] = ano_hidrologico["DECENDIO"] + ano_hidrologico["INICIO"].dt.strftime("%Y")
|
||||
|
||||
# Aplicar a função corrigida
|
||||
ano_hidrologico["ANO"] = ano_hidrologico["INICIO"].apply(calcular_ano_hidrologico)
|
||||
ano_hidrologico["AMPLITUDE"] = 0
|
||||
ano_hidrologico["ESTACAO"] = codigo
|
||||
# Salvar CSV corrigido
|
||||
file2= f"./47descendiofinal/{codigo}.csv"
|
||||
if os.path.exists(file2): os.remove(file2)
|
||||
ano_hidrologico.to_csv(file2, sep=";", encoding="utf-8", index=False)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
def gerarmatrizfinal():
|
||||
print("preencehr com os dados veranicos..")
|
||||
origem= '42veranicosclassificacao'
|
||||
destino = '47descendiofinal'
|
||||
|
||||
files = listar_csvs(origem)
|
||||
|
||||
for file in files:
|
||||
print(f"Encontrada pasta: ./{origem}/{file}")
|
||||
estacao = pd.read_csv(f"./{origem}/{file}", delimiter=";", encoding="utf-8")
|
||||
codigos = estacao['CODIGO'].unique()
|
||||
|
||||
for codigo in codigos:
|
||||
print(codigo)
|
||||
filedestino= f"./{destino}/{codigo}.csv"
|
||||
print(filedestino)
|
||||
|
||||
|
||||
destino_df = pd.read_csv(filedestino, delimiter=";", encoding="utf-8")
|
||||
origem = estacao[estacao['CODIGO'] == codigo]
|
||||
|
||||
|
||||
for index, row in origem.iterrows():
|
||||
key = row['KEY']
|
||||
amplitude = row['AMPLITUDE']
|
||||
|
||||
mask = destino_df['KEY'] == key
|
||||
if mask.any():
|
||||
destino_df.loc[mask, 'AMPLITUDE'] = amplitude
|
||||
|
||||
# Salva o dataset de destino atualizado
|
||||
destino_df.to_csv(filedestino, sep=";", index=False, encoding="utf-8")
|
||||
|
||||
|
||||
|
||||
def exportarcalc():
|
||||
csv_file = "teste.csv"
|
||||
ods_file = "saida.ods"
|
||||
|
||||
df_pivot.reset_index(inplace=True)
|
||||
df_pivot.to_csv("./43descendiofinal/final"+file, sep=";", encoding="utf-8", index=False)
|
||||
# Ler o CSV
|
||||
df = pd.read_csv(csv_file, delimiter=";", encoding="utf-8")
|
||||
|
||||
# Criar documento ODS
|
||||
ods = OpenDocumentSpreadsheet()
|
||||
table = Table(name="Dados")
|
||||
|
||||
# Adicionar linha do ESTACAO
|
||||
estacao = "2022454" # Valor fixo conforme exemplo
|
||||
ano_hidrologico = f"ESTACAO: {estacao}"
|
||||
row_ano = TableRow()
|
||||
cell_ano = TableCell()
|
||||
cell_ano.addElement(P(text=ano_hidrologico))
|
||||
row_ano.addElement(cell_ano)
|
||||
table.addElement(row_ano)
|
||||
|
||||
# Preparar os anos hidrológicos únicos
|
||||
anos = df['ANO'].unique() # Pegar anos únicos
|
||||
|
||||
# Adicionar linha de cabeçalho com os anos
|
||||
row_periodo = TableRow()
|
||||
# Primeira célula vazia para alinhamento
|
||||
cell_vazia = TableCell()
|
||||
cell_vazia.addElement(P(text="DECÊNDIO"))
|
||||
row_periodo.addElement(cell_vazia)
|
||||
|
||||
# Adicionar cada ano como cabeçalho
|
||||
for ano in anos:
|
||||
cell_ano = TableCell()
|
||||
cell_ano.addElement(P(text=str(ano)))
|
||||
row_periodo.addElement(cell_ano)
|
||||
table.addElement(row_periodo)
|
||||
|
||||
# Agrupar dados por decêndio
|
||||
decendios = df['DECENDIO'].unique()
|
||||
|
||||
|
||||
# Adicionar os dados
|
||||
for decendio in decendios:
|
||||
table_row = TableRow()
|
||||
|
||||
# Primeira célula com o nome do decêndio
|
||||
cell_decendio = TableCell()
|
||||
cell_decendio.addElement(P(text=decendio))
|
||||
table_row.addElement(cell_decendio)
|
||||
|
||||
# Adicionar valores para cada ano
|
||||
for ano in anos:
|
||||
# Filtrar o valor para o decêndio e ano específico
|
||||
valor = df[(df['DECENDIO'] == decendio) & (df['ANO'] == ano)]['AMPLIUDE'].iloc[0] if not df[(df['DECENDIO'] == decendio) & (df['ANO'] == ano)].empty else 0
|
||||
cell_valor = TableCell()
|
||||
cell_valor.addElement(P(text=str(valor)))
|
||||
table_row.addElement(cell_valor)
|
||||
|
||||
table.addElement(table_row)
|
||||
|
||||
# Adicionar a tabela ao documento
|
||||
ods.spreadsheet.addElement(table)
|
||||
|
||||
# Salvar o arquivo ODS
|
||||
ods.save(ods_file)
|
||||
|
||||
|
||||
|
||||
|
||||
def carregar_decendios(file):
|
||||
print("Abrindo arquivo decendio.")
|
||||
dados_df = pd.read_csv(file, sep=';', decimal=',', parse_dates=['INICIO', 'FINAL'], dayfirst=True)
|
||||
|
||||
|
||||
start_date = '1980-01-01'
|
||||
end_date = '2022-12-31'
|
||||
filtered_df = dados_df[(dados_df['INICIO'] >= start_date) & (dados_df['FINAL'] <= end_date)]
|
||||
|
||||
12
decendio.csv
12
decendio.csv
@@ -1079,15 +1079,3 @@ DECENDIO;INICIO;FINAL
|
||||
1DAPR;01/04/2025;10/04/2025
|
||||
2DAPR;11/04/2025;20/04/2025
|
||||
3DAPR;21/04/2025;30/04/2025
|
||||
1DSEP;01/09/2025;10/09/2025
|
||||
2DSEP;11/09/2025;20/09/2025
|
||||
3DSEP;21/09/2025;30/09/2025
|
||||
1DOCT;01/10/2025;10/10/2025
|
||||
2DOCT;11/10/2025;20/10/2025
|
||||
3DOCT;21/10/2025;31/10/2025
|
||||
1DNOV;01/11/2025;10/11/2025
|
||||
2DNOV;11/11/2025;20/11/2025
|
||||
3DNOV;21/11/2025;30/11/2025
|
||||
1DDEC;01/12/2025;10/12/2025
|
||||
2DDEC;11/12/2025;20/12/2025
|
||||
3DDEC;21/12/2025;31/12/2025
|
||||
|
||||
|
BIN
planilhas/TABELA VERANICOS Felipe.xlsx
Normal file
BIN
planilhas/TABELA VERANICOS Felipe.xlsx
Normal file
Binary file not shown.
Reference in New Issue
Block a user