This commit is contained in:
2025-01-23 19:53:48 -03:00
parent c544337e9c
commit 07ab395c2f
562 changed files with 152672 additions and 271017 deletions

View File

@@ -14,9 +14,15 @@ def listar_pastas(diretorio):
def filtro_setembro_abril_estacao(dados, output_csv):
# Lista dos anos para os quais queremos selecionar os dados
anos = list(range(1980, 2023)) # De 1980 a 2022
anos = list(range(2020, 2024)) # De 1980 a 2022
# Ler os dados do CSV
dados_df = pd.read_csv(dados, sep=';', decimal=',', parse_dates=['DATA'], dayfirst=True)
# DataFrame para armazenar os dados selecionados
dados_selecionados = pd.DataFrame()
@@ -46,6 +52,32 @@ def estacaochuvosa(dados, output_csv):
# Ler os dados do CSV
dados_df = pd.read_csv(dados, sep=';', decimal=',')
# dados['VALOR'] = dados['VALOR'].astype(str) # Garantir que todos os valores são strings
try:
dados['VALOR'] = dados['VALOR'].astype(str) # Garantir que todos os valores são strings
# Substituir vírgulas por pontos
dados['VALOR'] = dados['VALOR'].str.replace(',', '.', regex=False)
# Converter a coluna 'VALOR' para float
dados['VALOR'] = pd.to_numeric(dados['VALOR'], errors='coerce')
# Tratar valores NaN substituindo por 0
dados['VALOR'] = dados['VALOR'].fillna(0)
except Exception as e:
print(f"Erro ao converter a coluna 'VALOR': {e}")
#invalid_values = dados_df[~dados_df['DATA'].str.replace(',', '.').str.replace('.', '', 1).str.isnumeric()]
#print(invalid_values)
# Garantir que a coluna 'DATA' é do tipo datetime com o formato correto
try:
dados_df['DATA'] = pd.to_datetime(dados_df['DATA'], format='%Y-%m-%d', errors='raise')
@@ -55,6 +87,8 @@ def estacaochuvosa(dados, output_csv):
estacao = dados_df['CODIGO'].unique()
anos = list(range(1980, 2023)) # De 1980 a 2022
anos = list(range(2020, 2024)) # De 1980 a 2022
print(estacao)
total = len(estacao)
@@ -74,10 +108,12 @@ def estacaochuvosa(dados, output_csv):
somador_ml=0
somador_ml_final_chuva=0
for index, row in df_inciochuva.iterrows():
leitura_chuva= row['VALOR']
# print(index, ' ', row)
leitura_chuva = row['VALOR']#float(row['VALOR'].replace(',', '.'))
if leitura_chuva>=0:
somador_ml= somador_ml+leitura_chuva;
somador_ml= somador_ml+leitura_chuva
if somador_ml>=10 and not marcador_inicio:
marcador_inicio=True
@@ -117,7 +153,7 @@ def processar_inicio_fim_estacao_chuvosa():
print(f"Encontrada pasta: {pasta}")
dados = f"./{pasta}_processada.csv"
estacao =f"./{pasta}"
estacao =f"./{pasta}"
output_csv=f"./{pasta}_filtro_setembro_abril.csv"
estacao_chuvosa=f"./{pasta}_estacao_chuvosa.csv"