Open Touraoquaresma opened 2 years ago
import pandas as pd df = pd.read_csv(r'C:\Users\thedr\Documents\PYTHON\python\telecom_users.csv') df = df.drop(["Unnamed: 0"],axis=1) display(df) display(df.info())
df['TotalGasto'] = pd.to_numeric(df['TotalGasto'], errors='coerce')
df = df.dropna(how='all',axis=1) #all colunas completas
df = df.dropna(how='any',axis=0) print(df.info())
per = df['Churn'].value_counts() display(df['Churn'].value_counts(normalize=True).map('{:.1%}'.format))
import plotly.express as px
for coluna in df: if coluna != "IDCliente": fig = px.histogram(df, x=coluna, color="Churn") print(coluna) grafico = px.histogram(df, x=coluna, color='TotalGasto') #https://plotly.com/python/histograms fig.show() display(df.pivot_table(index="Churn", columns=coluna, aggfunc='count')["IDCliente"])
passo 1: importar a base de dados
import pandas as pd df = pd.read_csv(r'C:\Users\thedr\Documents\PYTHON\python\telecom_users.csv') df = df.drop(["Unnamed: 0"],axis=1) display(df) display(df.info())
passo 2: vizualizar a base de dados
entender quais informações você tem disponivel
descobrir as cagadas da base de dados
passo 3: tratamento da base de dados
valores que estão vazios
excluir informações inuteis
valores que são numeros mas que o python acha que são texto
df['TotalGasto'] = pd.to_numeric(df['TotalGasto'], errors='coerce')
colunas vazias
df = df.dropna(how='all',axis=1) #all colunas completas
linhas vazias
df = df.dropna(how='any',axis=0) print(df.info())
passo 4: Analise exploratoria -> analise geral -> como estão os cancelamentos
per = df['Churn'].value_counts() display(df['Churn'].value_counts(normalize=True).map('{:.1%}'.format))
passo 5: olhando as colunas da nossa base de dados -> identificar o motivo dos clientes cancelarem
import plotly.express as px
for coluna in df: if coluna != "IDCliente": fig = px.histogram(df, x=coluna, color="Churn") print(coluna) grafico = px.histogram(df, x=coluna, color='TotalGasto') #https://plotly.com/python/histograms fig.show() display(df.pivot_table(index="Churn", columns=coluna, aggfunc='count')["IDCliente"])