import pandas as pd
import statistics as st
import numpy as np

"""
Explanation: Procesos ETVL usando IPython -- 9 -- Taller
Notas de clase sobre la extracción, transformación, visualización y carga de datos usando IPython
Juan David Velásquez Henao 
jdvelasq@unal.edu.co
Universidad Nacional de Colombia, Sede Medellín
Facultad de Minas
Medellín, Colombia  
Licencia
Readme
Software utilizado.

Este es un documento interactivo escrito como un notebook de Jupyter, en el cual se presenta un tutorial sobre la extracción, transformación, visualización y carga de datos usando Python en el contexto de la ciencia de los datos. Los notebooks de Jupyter permiten incoporar simultáneamente código, texto, gráficos y ecuaciones. El código presentado en este notebook puede ejecutarse en los sistemas operativos  Windows, Linux y OS X.
Haga click aquí para obtener instrucciones detalladas sobre como instalar Jupyter en Windows y Mac OS X.
Haga clic aquí para ver la última versión de este documento en nbviewer.
Descargue la última versión de este documento a su disco duro; luego, carguelo y ejecutelo en línea en Try Jupyter!

Contenido



Para el archivo AportesDiario_2015.csv, responda las siguientes preguntas usando IPython.
End of explanation
"""


x=pd.read_csv('AportesDiario_2015.csv', sep=';',decimal=',',thousands='.',skiprows=2)
len(x)

x.head()

"""
Explanation: 1.-- Cuántos registros tiene el archivo?
End of explanation
"""


len(set(x['Region Hidrologica']))

"""
Explanation: 2.-- Cuántas regiones hidrológicas diferentes hay?
End of explanation
"""


len(set(x['Nombre Rio']))

"""
Explanation: 3.-- Cuántos rios hay?
End of explanation
"""


y = x.groupby('Region Hidrologica')
y.size()

"""
Explanation: 4.-- Cuántos registros hay por región hidrológica?
End of explanation
"""


x.groupby('Region Hidrologica').mean()['Aportes %']


"""
Explanation: 5.-- Cuál es el promedio de aportes en energía kWh por región?
End of explanation
"""


Caudal=len(x[x['Aportes Caudal m3/s'].isnull()])
Aportes=len(x[x['Aportes Energia kWh'].isnull()])
Aport =len(x[x['Aportes %'].isnull()])

print (Caudal)
print (Aportes)
print (Aport)

# x.dropna() borra los registros na
len(x) - len(x.dropna())

"""
Explanation: 6.-- Cuáles registros no tienen datos?
End of explanation
"""


import matplotlib
%matplotlib inline

x.groupby('Region Hidrologica').mean()['Aportes Energia kWh'].plot(kind='bar')

"""
Explanation: 7.-- Grafique (gráfico de barras) la producción promedio por región hidrológica?
End of explanation
"""


