diff --git a/script/analysis/course_analysis.py b/script/analysis/course_analysis.py
index c52dec75344364d75c50e753d1ab29eadbc2696e..5a46c13739de95341c0e2a3a78719f97090e33e4 100644
--- a/script/analysis/course_analysis.py
+++ b/script/analysis/course_analysis.py
@@ -3,31 +3,25 @@ import pandas as pd
 import json
 import numpy as np
 import utils.situations
-from collections import OrderedDict, defaultdict
-
-
-# df = pd.read_excel("../base/base-2016-1/historico.xls")
-# imprime completamente um dataframe
-
-
 def print_analise(d):
+    '''imprime todo o dataframe, por default o pandas so imprime as
+    10 linhas inicias a 10 finais, com essa funcao o pandas imprime
+    as linhas '''
     with pd.option_context('display.max_rows', None, 'display.max_columns', 27):
         print(d)
 
 # calcula as taxas
-
-
 def func(x, matr):
+    ''' esta funcao recebe como parametro uma linha do dataframe e a
+quantidade de matriculas '''
     c = matr[x['COD_ATIV_CURRIC']].values[0]
     return (x['Quantidade'] / c)
 
 # quantidade de matriculas
-
-
 def counts_matr(df):
     return df.groupby(['COD_ATIV_CURRIC']).size()
 
-
+# taxas e quantidades semetrais
 def analysis(df):
     qnt_matr = counts_matr(df)  # quantidade de matriculas disciplina
     # conta quantas vezes os valores de 'SIGLA' se repete para cada disciplina
@@ -36,19 +30,22 @@ def analysis(df):
     # adiciona mais uma coluna ao df disciplina com as taxas de cada valor de 'SIGLA'
     disciplina = disciplinas.groupby(['COD_ATIV_CURRIC', 'SIGLA', 'Quantidade']).apply(
         lambda x: func(x, qnt_matr)).reset_index(name='Taxas gerais')
-    disciplina = disciplina.drop('level_3',1)
-    for dis in qnt_matr.keys():
-        disc = disciplina.loc[disciplina['COD_ATIV_CURRIC']==dis].drop('COD_ATIV_CURRIC',1)
-        disc = disc.set_index('SIGLA').to_dict(into=OrderedDict)
-        with open(dis+'.json','w') as f:
-            json.dump(disc,f,indent=4)
-    return disciplina.set_index('COD_ATIV_CURRIC')
+    disciplina = disciplina.drop('level_3',1) # retira coluna duplicada do index
+    return disciplina
 # quantidade de vezes cursadas ate obter a aprovacao
 def qnt_aprov(df):
     qnt = df.groupby(['MATR_ALUNO', 'COD_ATIV_CURRIC']
                      ).size().reset_index(name='qnt_aprov')
     return qnt
-
+# transforma o dataframe geral em json, # TODO: fazer o mesmo com o semestral
+def df_to_json(disciplina,qnt_matr):
+    for dis in qnt_matr.keys():
+        disc = disciplina.loc[disciplina['COD_ATIV_CURRIC']==dis].drop('COD_ATIV_CURRIC',1) # separa o dataframe em disciplina e elimina a coluna codigo
+        # seta a coluna sigla como index
+        disc = disc.set_index('SIGLA').to_dict()
+        # cria o json
+        with open(dis+'.json','w') as f:
+            json.dump(disc,f,indent=4)
 
 def matr_semestre(df):
     return df.groupby(['COD_ATIV_CURRIC', 'PERIODO', 'ANO']).size()
@@ -61,13 +58,6 @@ def func_semestre(x, matr):
     periodo = x['PERIODO'].values[0]
     disciplina = x['COD_ATIV_CURRIC'].values[0]
     c = matr[disciplina,periodo,ano]
-    # break
-    # print(x['PERIODO'])
-    # print("Disciplina: %s\nPeriodo:%s \nAno:%d"%(disciplina,periodo,ano))
-    # c = matr['CI056','2']
-    # print(c)
-    # print(disciplina)
-    # print("--------------------------------------------------------------------------")
     return (x['counts_semestre'] / c)
 
 
@@ -82,25 +72,6 @@ def analysis_semestre(df):
 def Main(df):
     Analysis = analysis(df)
     Analysis_semestre = analysis_semestre(df)
-    # print_analise(Analysis)
     matr = counts_matr(df)
+    df_to_json(Analysis,matr)
     matr_semes = matr_semestre(df)
-    # print_analise(merged)
-
-# main()
-# matr = counts_matr(df)
-# analysis(df)
-# qnt_aprov(df)
-
-#
-##f = lambda x: x / c[x]
-## p = df.groupby(['COD_ATIV_CURRIC','SIGLA']).size().apply(lambda x: (x /c['CI055'])*100)
-#k = (df.sort(['ANO','PERIODO']))
-##(p.apply(lambda x: print(p['COD_ATIV_CURRIC'])))
-#
-# .size().reset_index(name = "count");
-# c = p.groupby(['count','SIGLA']).size()
-## ''' percorre mais uma vez a serie para aplicar a funcao lambida, se a '''
-##  c = lambda x: x+1
-## curses = df['COD_ATIV_CURRIC'].drop_duplicates()
-# 'MATR_ALUNO','