%matplotlib inline
import numpy as np
import pandas as pd

"""
Explanation: Garimpagem de Dados
Aula 2 - Pandas
06/10/2017
End of explanation
"""


a = pd.Series([20, 50, 190, 11, 76])
print(a)

dados = [20, 50, 190, 11, 76]
rotulos = ['a', 'b', 'c', 'd', 'e']
b = pd.Series(dados, index=rotulos)
print(b)

print(a[2])
print(b['c'])

a.plot(marker='o', grid=True);

"""
Explanation: Series
End of explanation
"""


matriz = np.array([[1, 2, 3], [4, 5, 6]])
nomes_linhas = ['L1', 'L2']
nomes_cols = ['C1', 'C2', 'C3']

df = pd.DataFrame(matriz, index=nomes_linhas, columns=nomes_cols)
df

print(df)

print(df.to_latex())

df['C4'] = [4, 7]
df

df.plot(kind='bar', grid=True, title=u'Título');

df2 = df.transpose()
df2

df2.plot(kind='bar', grid=True);

df.sort_values(by='C4', ascending=False)

"""
Explanation: DataFrame
End of explanation
"""


train = pd.read_csv('train.csv')

print(train.head()) # 5 primeiras linhas

print(train['Age'])

print(train.Sex)

print(train[['Sex','Age','Fare']])

print(train.ix[2])

print(train.ix[[0,10,50]])

print(train.tail()) # últimas 5 linhas

print(train.columns)

print(train.shape)

print(train.describe()) # calcula estatísticas para cada coluna numérica do DataFrame

print(train[train.Sex == "female", train.Age])

"""
Explanation: Interagindo com datasets reais
Plataforma Kaggle - Competições de Ciências de Dados
Titanic: Machine Learning from Disaster
Nela, são providenciadas diversas informações sobre os passageiros em um Dataset de treino e um Dataset de teste, como idade, sexo, cabine, valor do tíquete pago, entre outros. 
Além disso, no Dataset de treino é fornecida a variável alvo, que diz se um passageiro sobreviveu (valor = 1) ou não (valor = 0) ao naufrágio. 
Já no Dataset de teste, são dadas as mesmas informações sobre outros passageiros, com exceção da variável alvo (a sobrevivência). Para os passageiros do Dataset de teste, você deverá prever se eles sobreviveram ou não, a partir das suas características, em comparação com as informações fornecidas no Dataset de treino.
End of explanation
"""


