#!/usr/bin/env python
# coding: utf-8

# # Ejercicio Transacciones. Parte 1 - Preparación de los datos.

# Ejercicio dividido en varias partes con el que analizaremos un conjunto de datos de transacciones reales efectuadas en el área del gran Bilbao.

# In[6]:


import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
from datetime import datetime

import warnings
warnings.filterwarnings('ignore')

pd.options.display.float_format = '{:.2f}'.format #Desactivar notación científica en pandas:
np.set_printoptions(suppress=True) #Desactivar notación científica en numpy:
pd.set_option('display.max_columns', None) #comando para mostrar todas las columnas


# #### Cargamos el primer set de datos con el que vamos a trabajar

# In[59]:


df = pd.read_csv('./data/transacciones.csv', sep=';', decimal=',')


# In[60]:


df


# In[61]:


df.info()


# In[62]:


# Modificamos el campo Fecha para que sea una fecha y el código postal a string
df['Fecha'] = pd.to_datetime(df['Fecha'].astype('string'))
df['Código Postal'] = df['Código Postal'].astype('string')


# In[63]:


df.info()


# In[65]:


# Enriquecemos un poco...
df['Importe Total'] = df['Importe Medio'] * df['Transacciones']


# In[66]:


# Guardamos el resultado
df.to_csv('./data/transacciones2.csv', header=True, encoding = 'UTF-8', sep=";", decimal=',', index=False)


# #### Cargamos el segundo set de datos

# In[49]:


clima = pd.read_csv('./data/clima.csv', sep=";", decimal=',')
clima.info()


# In[50]:


clima


# In[51]:


# Como en el set previo, corregimos el tipo de la columna fecha
clima['Fecha'] = pd.to_datetime(clima['Fecha'].astype('string'))


# In[52]:


clima.info()


# In[53]:


clima.to_csv('./data/clima2.csv', sep=';', decimal=',', encoding='UTF-8', index=False)


# #### Tercer dataset a modificar. Dataset con los festivos del 2015

# In[54]:


datos = pd.read_csv('./data/festivos.csv', sep=';')
datos.info()


# In[55]:


datos


# In[56]:


# Convertimos la fecha en fecha
datos['Fecha'] = pd.to_datetime(datos['Fecha'].astype('string'))


# In[57]:


datos.info()


# In[58]:


datos.to_csv('./data/festivos2.csv', sep=';', encoding='UTF-8', index=False)

