{ "cells": [ { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "ename": "FileNotFoundError", "evalue": "[Errno 2] No such file or directory: 'dadosNovo.csv'", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mFileNotFoundError\u001b[0m Traceback (most recent call last)", "Cell \u001b[0;32mIn[2], line 7\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mnumpy\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mnp\u001b[39;00m\n\u001b[1;32m 5\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mcsv\u001b[39;00m\n\u001b[0;32m----> 7\u001b[0m dados \u001b[38;5;241m=\u001b[39m \u001b[43mpd\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mread_csv\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mdadosNovo.csv\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43msep\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43m;\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mencoding\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mutf-8\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mdecimal\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43m,\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[1;32m 8\u001b[0m \u001b[38;5;66;03m#dados.head(5)\u001b[39;00m\n", "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/pandas/io/parsers/readers.py:948\u001b[0m, in \u001b[0;36mread_csv\u001b[0;34m(filepath_or_buffer, sep, delimiter, header, names, index_col, usecols, dtype, engine, converters, true_values, false_values, skipinitialspace, skiprows, skipfooter, nrows, na_values, keep_default_na, na_filter, verbose, skip_blank_lines, parse_dates, infer_datetime_format, keep_date_col, date_parser, date_format, dayfirst, cache_dates, iterator, chunksize, compression, thousands, decimal, lineterminator, quotechar, quoting, doublequote, escapechar, comment, encoding, encoding_errors, dialect, on_bad_lines, delim_whitespace, low_memory, memory_map, float_precision, storage_options, dtype_backend)\u001b[0m\n\u001b[1;32m 935\u001b[0m kwds_defaults \u001b[38;5;241m=\u001b[39m _refine_defaults_read(\n\u001b[1;32m 936\u001b[0m dialect,\n\u001b[1;32m 937\u001b[0m delimiter,\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 944\u001b[0m dtype_backend\u001b[38;5;241m=\u001b[39mdtype_backend,\n\u001b[1;32m 945\u001b[0m )\n\u001b[1;32m 946\u001b[0m kwds\u001b[38;5;241m.\u001b[39mupdate(kwds_defaults)\n\u001b[0;32m--> 948\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43m_read\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfilepath_or_buffer\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mkwds\u001b[49m\u001b[43m)\u001b[49m\n", "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/pandas/io/parsers/readers.py:611\u001b[0m, in \u001b[0;36m_read\u001b[0;34m(filepath_or_buffer, kwds)\u001b[0m\n\u001b[1;32m 608\u001b[0m _validate_names(kwds\u001b[38;5;241m.\u001b[39mget(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mnames\u001b[39m\u001b[38;5;124m\"\u001b[39m, \u001b[38;5;28;01mNone\u001b[39;00m))\n\u001b[1;32m 610\u001b[0m \u001b[38;5;66;03m# Create the parser.\u001b[39;00m\n\u001b[0;32m--> 611\u001b[0m parser \u001b[38;5;241m=\u001b[39m \u001b[43mTextFileReader\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfilepath_or_buffer\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwds\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 613\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m chunksize \u001b[38;5;129;01mor\u001b[39;00m iterator:\n\u001b[1;32m 614\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m parser\n", "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/pandas/io/parsers/readers.py:1448\u001b[0m, in \u001b[0;36mTextFileReader.__init__\u001b[0;34m(self, f, engine, **kwds)\u001b[0m\n\u001b[1;32m 1445\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39moptions[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mhas_index_names\u001b[39m\u001b[38;5;124m\"\u001b[39m] \u001b[38;5;241m=\u001b[39m kwds[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mhas_index_names\u001b[39m\u001b[38;5;124m\"\u001b[39m]\n\u001b[1;32m 1447\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mhandles: IOHandles \u001b[38;5;241m|\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[0;32m-> 1448\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_engine \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_make_engine\u001b[49m\u001b[43m(\u001b[49m\u001b[43mf\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mengine\u001b[49m\u001b[43m)\u001b[49m\n", "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/pandas/io/parsers/readers.py:1705\u001b[0m, in \u001b[0;36mTextFileReader._make_engine\u001b[0;34m(self, f, engine)\u001b[0m\n\u001b[1;32m 1703\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mb\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;129;01min\u001b[39;00m mode:\n\u001b[1;32m 1704\u001b[0m mode \u001b[38;5;241m+\u001b[39m\u001b[38;5;241m=\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mb\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[0;32m-> 1705\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mhandles \u001b[38;5;241m=\u001b[39m \u001b[43mget_handle\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 1706\u001b[0m \u001b[43m \u001b[49m\u001b[43mf\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1707\u001b[0m \u001b[43m \u001b[49m\u001b[43mmode\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1708\u001b[0m \u001b[43m \u001b[49m\u001b[43mencoding\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43moptions\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mencoding\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43;01mNone\u001b[39;49;00m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1709\u001b[0m \u001b[43m \u001b[49m\u001b[43mcompression\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43moptions\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mcompression\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43;01mNone\u001b[39;49;00m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1710\u001b[0m \u001b[43m \u001b[49m\u001b[43mmemory_map\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43moptions\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mmemory_map\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1711\u001b[0m \u001b[43m \u001b[49m\u001b[43mis_text\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mis_text\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1712\u001b[0m \u001b[43m \u001b[49m\u001b[43merrors\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43moptions\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mencoding_errors\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mstrict\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1713\u001b[0m \u001b[43m \u001b[49m\u001b[43mstorage_options\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43moptions\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mstorage_options\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43;01mNone\u001b[39;49;00m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1714\u001b[0m \u001b[43m\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1715\u001b[0m \u001b[38;5;28;01massert\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mhandles \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[1;32m 1716\u001b[0m f \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mhandles\u001b[38;5;241m.\u001b[39mhandle\n", "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/pandas/io/common.py:872\u001b[0m, in \u001b[0;36mget_handle\u001b[0;34m(path_or_buf, mode, encoding, compression, memory_map, is_text, errors, storage_options)\u001b[0m\n\u001b[1;32m 863\u001b[0m handle \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mopen\u001b[39m(\n\u001b[1;32m 864\u001b[0m handle,\n\u001b[1;32m 865\u001b[0m ioargs\u001b[38;5;241m.\u001b[39mmode,\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 868\u001b[0m newline\u001b[38;5;241m=\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m\"\u001b[39m,\n\u001b[1;32m 869\u001b[0m )\n\u001b[1;32m 870\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 871\u001b[0m \u001b[38;5;66;03m# Binary mode\u001b[39;00m\n\u001b[0;32m--> 872\u001b[0m handle \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mopen\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mhandle\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mioargs\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mmode\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 873\u001b[0m handles\u001b[38;5;241m.\u001b[39mappend(handle)\n\u001b[1;32m 875\u001b[0m \u001b[38;5;66;03m# Convert BytesIO or file objects passed with an encoding\u001b[39;00m\n", "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'dadosNovo.csv'" ] } ], "source": [ "# Carregando\n", "#começa tratando os dados e limpa a base\n", "import pandas as pd\n", "import numpy as np\n", "import csv\n", "\n", "dados = pd.read_csv('dadosNovos.csv', sep=';', encoding='utf-8', decimal=',')\n", "#dados.head(5)\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "#dados.dtypes\n", "# selecao do periodo de analise \n", "\n", "dados['DATA'] = pd.to_datetime(dados['DATA'], format='%d/%m/%Y')\n", "\n", "df_merged =pd.DataFrame()\n", "\n", "\n", "ano = list([2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020])\n", "\n", "\n", "for x in ano:\n", " selecao = (dados['DATA'] >=str(x)+'/09/01') & (dados['DATA'] <= str(x+1)+'/04/30')\n", " \n", " df_filtrado = dados[selecao]\n", "\n", "\n", " df_merged = pd.concat([df_merged, df_filtrado], ignore_index=True) \n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from datetime import datetime\n", "#inicio da estacao chuvosa \n", "\n", "nome_estacao='DIAMANTINA'\n", " \n", "inciochuva = df_merged.loc[:,['DATA', nome_estacao] ]\n", "final_chuva=[]\n", "\n", "marcador_inicio=False\n", "ano_do_incio_chuva=0\n", "marcador_final=False\n", "\n", "somador_ml=0\n", "somador_ml_final_chuva=0\n", "\n", "for index, row in inciochuva.iterrows():\n", " leitura_chuva= row[nome_estacao] \n", " \n", " if leitura_chuva>=0:\n", " somador_ml= somador_ml+leitura_chuva;\n", "\n", " if somador_ml>=10 and not marcador_inicio:\n", " marcador_inicio=True\n", " data_incio_chuva= row['DATA'] \n", " ano_atual= row['DATA'].year\n", " print ('estacao:', nome_estacao,'INCIO:', data_incio_chuva, 'MM', somador_ml)\n", " somador_ml=0\n", " ano_do_incio_chuva= ano_atual\n", " marcador_final=False\n", " #print ('estacao:',ano_do_incio_chuva)\n", "\n", "final_chuva = inciochuva[::-1] \n", "print ('ano incio chuva:',ano_do_incio_chuva)\n", "for index, row in final_chuva.iterrows(): \n", " leitura_chuva= row[nome_estacao] \n", " ano_atual= int(row['DATA'].year)\n", " data_atual= row['DATA'] \n", " \n", " if leitura_chuva>=0 and data_atual <= datetime.strptime(str(ano_do_incio_chuva+1)+'-04-30', '%Y-%m-%d') :\n", " somador_ml_final_chuva = somador_ml_final_chuva +leitura_chuva\n", "\n", " if somador_ml_final_chuva>=5 and not marcador_final: \n", " marcador_final=True \n", " data_final_chuva= row['DATA'] \n", " print ('estacao:', nome_estacao,'FINAL:', data_final_chuva, 'MM', somador_ml_final_chuva)\n", " somador_ml_final_chuva=0\n", " marcador_inicio=False\n", " print ('ano final chuva:', ano_do_incio_chuva+1)\n", " \n" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import csv\n", "from datetime import datetime\n", "\n", "with open('iniciofimestacao.csv', 'w') as file:\n", " cabecalho = ['estacao', 'inicio','final']\n", " writer = csv.DictWriter(file, fieldnames=cabecalho,delimiter=';')\n", " writer.writeheader() # Escreve o cabeçalho\n", "\n", "\n", "#inicio da estacao chuvosa \n", "ano = list([2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020])\n", "\n", "#extrair nome coulas e remove a data\n", "estacao= list(dados.columns)\n", "estacao.pop(0)\n", "\n", "\n", "\n", "for xrow in estacao: #percorre a lista das estacoes\n", "\n", " for x in ano: # de cada estacao percorre o ano\n", "\n", " selecao = (dados['DATA'] >=str(x)+'/09/01') & (dados['DATA'] <= str(x+1)+'/04/30') \n", " df_filtrado_ano = dados[selecao] \n", "\n", " nome_estacao=xrow\n", " inciochuva = df_filtrado_ano.loc[:,['DATA', nome_estacao] ]\n", " final_chuva=[]\n", "\n", " marcador_inicio=False\n", " ano_do_incio_chuva=0\n", " marcador_final=False\n", "\n", " somador_ml=0\n", " somador_ml_final_chuva=0\n", "\n", " for index, row in inciochuva.iterrows():\n", " leitura_chuva= row[nome_estacao] \n", " \n", " if leitura_chuva>=0:\n", " somador_ml= somador_ml+leitura_chuva;\n", "\n", " if somador_ml>=10 and not marcador_inicio:\n", " marcador_inicio=True\n", " data_incio_chuva= row['DATA'] \n", " ano_atual= row['DATA'].year\n", " #print ('estacao:', nome_estacao,'INCIO:', data_incio_chuva, 'MM', somador_ml)\n", " dtinicio=data_incio_chuva\n", " somador_ml=0\n", " ano_do_incio_chuva= ano_atual\n", " marcador_final=False\n", " #print ('estacao:',ano_do_incio_chuva)\n", "\n", " \n", " final_chuva = inciochuva[::-1] \n", " \n", " for index, row in final_chuva.iterrows(): \n", " leitura_chuva= row[nome_estacao] \n", " ano_atual= int(row['DATA'].year)\n", " data_atual= row['DATA'] \n", " \n", " if leitura_chuva>=0 and data_atual <= datetime.strptime(str(ano_do_incio_chuva+1)+'-04-30', '%Y-%m-%d') :\n", " somador_ml_final_chuva = somador_ml_final_chuva +leitura_chuva\n", "\n", " if somador_ml_final_chuva>=5 and not marcador_final: \n", " marcador_final=True \n", " data_final_chuva= row['DATA'] \n", " #print ('estacao:', nome_estacao,'FINAL:', data_final_chuva, 'MM', somador_ml_final_chuva)\n", " dtfinal = data_final_chuva\n", " somador_ml_final_chuva=0\n", " marcador_inicio=False\n", " #print ('ano final chuva:', ano_do_incio_chuva+1)\n", " \n", " #print ('estacao:', nome_estacao,'INCIO:', data_incio_chuva,'FINAL:', data_final_chuva )\n", " with open('iniciofimestacao.csv', 'a') as file:\n", " writer = csv.DictWriter(file, fieldnames=cabecalho, delimiter=';') \n", " writer.writerow({'estacao':nome_estacao, 'inicio':data_incio_chuva,'final':data_final_chuva}) \n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "#extrair nome coulas e remove a data\n", "estacao= list(dados.columns)\n", "estacao.pop(0)\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "with open('final.csv', 'w') as file:\n", " cabecalho = ['estacao', 'inicio','final', 'qtdias']\n", " writer = csv.DictWriter(file, fieldnames=cabecalho, delimiter=';')\n", " writer.writeheader() # Escreve o cabeçalho\n", "\n", "marcador_inicio= False\n", "marcador_final= False\n", "marcador_primeirodia= False\n", "leitura_chuva=0\n", "cont_veranico=0\n", "data_anterior=''\n", "data_incio=''\n", "\n", "\n", "for xrow in estacao: #percorre a lista das estacoes\n", "\n", " nome_estacao=xrow\n", " \n", " novo = dados.loc[:,['DATA', nome_estacao] ]\n", " novo[nome_estacao] = novo[nome_estacao].astype(float)\n", "\n", " for index, row in novo.iterrows():\n", " leitura_chuva= row[nome_estacao] \n", " data= row['DATA']\n", " if (marcador_inicio):\n", " if leitura_chuva <=0:\n", " cont_veranico= cont_veranico+1\n", " else:\n", " marcador_final= True\n", " \n", " if (cont_veranico==1 and marcador_inicio):\n", " data_incio= data \n", " if marcador_final:\n", " if (cont_veranico>=4):\n", " \n", " #print ('estacao:', nome_estacao,'INCIO:', data_incio, ' FIM:', data_anterior , ' DIAS:', cont_veranico) \n", " with open('final.csv', 'a') as file:\n", " writer = csv.DictWriter(file, fieldnames=cabecalho, delimiter=';') \n", " writer.writerow({'estacao':nome_estacao, 'inicio':data_incio,'final':data_anterior, 'qtdias':cont_veranico}) \n", "\n", "\n", "\n", "\n", " #toda ver que chove mais que 0.5 mm ele reinicia o contador\n", " if leitura_chuva >0: \n", " marcador_inicio= True\n", " cont_veranico= 0\n", " marcador_final= False\n", "\n", " data_anterior= data\n", " \n" ] } ], "metadata": { "kernelspec": { "display_name": "venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.12" }, "orig_nbformat": 4 }, "nbformat": 4, "nbformat_minor": 2 }