Regressão linear em Python

Regressão linear em Python

Na análise de dados, os principais influenciadores são variáveis ​​que têm um impacto significativo em uma variável dependente. Ou seja, são os fatores que mais contribuem para o resultado de interesse. Em Python, a regressão linear é usada para identificar os principais influenciadores em um conjunto de dados e para medir a força e a direção da relação entre diferentes variáveis. Você pode assistir ao vídeo completo deste tutorial na parte inferior deste blog .

Identificar os principais influenciadores pode ser útil para entender os relacionamentos subjacentes em um conjunto de dados e para fazer previsões sobre resultados futuros.

As bibliotecas Python fornecem uma variedade de ferramentas e funções para realizar análises de regressão e identificar os principais influenciadores em um conjunto de dados.

Índice

Usando um modelo de regressão linear

Neste artigo, mostrarei como você pode usar um modelo de regressão linear para imitar alguns dos principais influenciadores do LuckyTemplates. Nosso objetivo é usar todas as nossas variáveis ​​para poder descrever o que está mudando em outra variável.

Os principais influenciadores do LuckyTemplates são um modelo de regressão linear. Muitas vezes, usamos isso, embora não saibamos exatamente o que está por baixo do capô. Neste tutorial, estou usando isso para identificar os fatores que contribuem para as cobranças de seguro.

Regressão linear em Python

Vamos dar uma olhada no conjunto de dados das taxas de seguro. Quero que isso seja explicado pelo status de fumante, sexo, região, filhos, IMC e idade.

Regressão linear em Python

Atualmente, os principais influenciadores mostram a variável mais influente. Quando o fumante é sim, a cobrança média é de $ 23.615 unidades a mais em comparação com todos os outros valores de um fumante.

É um ótimo visual, mas não nos dá nenhuma outra variável que possa afetar as cobranças.

Regressão linear em Python

Vamos nos aprofundar nisso alterando o menu suspenso de Aumentar para Diminuir .

Desta vez, é o oposto. Se você não é fumante, a cobrança média é $ 23.615 unidades mais baixa em comparação com todos os outros valores de um fumante.

Regressão linear em Python

Como você pode ver, este é um modelo de regressão linear que construí usando alguns códigos Python e canalizei para o LuckyTemplates com formatação condicional mínima .

Em termos de codificação, temos total controle sobre ela, e você verá como construí isso como uma alternativa ou um complemento ao visual dos principais influenciadores.

Regressão linear em Python

Vamos pular para o Caderno de Júpiter. Para um melhor entendimento, deixe-me explicá-los parte por parte.

Regressão linear em Python

Bibliotecas Python Usadas

A primeira parte é onde carreguei todas as bibliotecas que quero usar. Se você não estiver familiarizado com as bibliotecas, elas são coleções de códigos e funções que os desenvolvedores criaram para nós.

Importei pandas como pd , que é uma biblioteca de manipulação de dados, e numpy como np para nos permitir fazer cálculos lineares e condicionais.

Modelos Usados

Vamos falar sobre os modelos que usei. Eu trouxe sklearn.linear_model , que é uma , e usei um modelo de regressão linear. Caso precisemos, também trouxe sklearn.preprocessing import StandardScaler , que nos permitirá dimensionar nossos dados.

Outro modelo que utilizo chama-se xgboost import XGBRegressor . É um modelo de regressão com uma árvore de decisão e outros aspectos úteis.

Além disso, também usei train_set_split porque quero poder dividir os dados entre um conjunto de treinamento e um conjunto de aprendizado. No Machine Learning, precisamos de um conjunto de dados de treinamento para o algoritmo aprender antes de fazer qualquer previsão.

Também trouxe mean_squared_error para determinar o modelo e a biblioteca matplotlib.pyplot caso desejemos fazer alguns visuais.

Podemos não usar todos eles, mas pode ser útil, então coloquei todos eles.

Regressão linear em Python

Conjunto de dados usado

Em seguida, vamos dar uma olhada rápida no conjunto de dados. Usei a função df = pd.read_csv para trazer o conjunto de dados do seguro e depois converti os dados em variáveis ​​fictícias usando df1 = pd.get_dummies (df, drop_first = True) .

Regressão linear em Python

Para isso, vamos criar uma nova célula pressionando Esc + B em nosso teclado e depois digitar df.head para avaliar os dados.

Temos a idade, sexo, IMC, filhos, fumante, região e cargas que queremos prever como nossa variável dependente. Esses são os dados que chegam despreparados para o aprendizado de máquina.

No aprendizado de máquina, não poderemos usar variáveis ​​categóricas como feminino, masculino, sudoeste e noroeste. Portanto, a primeira coisa que precisamos fazer se for um modelo de regressão típico é traduzir as variáveis ​​categóricas em entradas numéricas. 

Regressão linear em Python

Para fazer isso, usei a função pd.get_dummies e também mudei isso para uma coluna numérica alterando df.head para df1.head . Vamos clicar no botão Executar para mostrar como ele se parece.

Regressão linear em Python

Agora podemos ver essa nova coleção de colunas como sex_male , smoker_yes , region_northwest e assim por diante. O algoritmo sabe automaticamente que se for 1 significa sim e 0 significa não.

Notavelmente, não há sex_female e region_northeast porque não queremos complicar demais o modelo. Nós os eliminamos usando a função drop_first = True .

A próxima coisa que fiz foi trazer a função LinearRegression e salvá-la no modelo variável. 

Também criei variáveis ​​X e Y para prever nossas variáveis ​​Y e, em seguida, trouxe todas as outras colunas para nossos preditores usando o mesmo conjunto de dados que usamos anteriormente.

Regressão linear em Python

Para a variável X, usamos df1.drop ('cargas', eixo=1) para descartar cargas. Por outro lado, precisamos de cobranças para a variável Y, por isso colocamos df1['charges'] .

Com as funções abaixo, criei conjuntos de treinamento e teste para X e Y usando a função train_test_split e os passei para as variáveis ​​X e Y.

Além disso, usei model.fit para ajustar os dados de treinamento ao nosso modelo. Isso significa que o modelo de regressão linear aprenderá os dados de treinamento. 

Regressão linear em Python

Desta vez, vamos dar uma olhada em nossos preditores. A forma como vemos isso é por meio de coeficientes, pois eles descrevem como cada uma dessas características ou variáveis ​​afetam as cargas.

Também é perceptível que o número do coeficiente para smoker_yes é muito próximo se você comparar com o número do que temos para os principais influenciadores e em nosso modelo. 

Para criar uma tabela onde temos os recursos e coeficientes, usei pd.DataFrame para trazer os coeficientes para a tabela e criar o visual.

Regressão linear em Python

Regressão linear em Python

Usando diferentes modelos para os principais influenciadores visuais

Também é aconselhável usar modelos diferentes para obter os principais influenciadores, trazendo XGB.Regressor

Quando representamos o modelo, é apenas uma regressão linear simples; mas quando trouxemos o XGB.Regressor, há muitos parâmetros que podemos usar para otimizar o modelo.

Regressão linear em Python

Também repliquei essas funções quando criei o quadro de dados abaixo. Esses coeficientes são muito diferentes em comparação com o que vimos na regressão linear.

Regressão linear em Python

Com esta tabela, os números são exatos. Por exemplo, se você for fumante, suas despesas aumentarão em $ 23.787. Se você tiver um filho, vai aumentar em $ 472 e assim por diante.

Regressão linear em Python

Esses influenciadores também são importantes porque refletem o que temos na tabela de regressão linear. É um pouco diferente, mas muito próximo porque esses influenciadores somam um. Esta é apenas uma maneira diferente de olhar para os influenciadores.

Regressão linear em Python

Testando a precisão da análise de regressão linear

Depois disso, queremos ver a precisão do nosso modelo, por isso usamos y_pred = model.predict (X_test) . Ele veio com uma previsão de que estava errado em 5885,7. 

Este é apenas um conjunto de dados de teste e, independentemente de a previsão ser boa ou ruim, ainda precisamos avaliá-la. Não faremos isso agora, pois estamos nos concentrando apenas em nossos principais influenciadores. 

Regressão linear em Python

Voltando ao LuckyTemplates, mostrarei como coloco isso com muita facilidade. Esta é uma tabela separada onde você pode ver os recursos e os influenciadores. 

Regressão linear em Python

Eu fiz isso indo para Transformar dados .

Regressão linear em Python

Então, dupliquei meu conjunto de dados e consegui criar esta tabela. Também podemos ir para Applied Steps para ver o código Python e revisar as variáveis ​​que usamos.

Regressão linear em Python

Vamos abrir o script Python clicando duas vezes nele. 

Regressão linear em Python

Trouxemos nossas bibliotecas. Nós o convertemos em um conjunto de dados de pré-processamento de aprendizado de máquina que era apenas zeros e uns. 

Além disso, trouxemos um modelo de regressão, criamos nosso X e Y para ajustar os dados e salvamos a tabela como saída. O modelo é bom o suficiente, então não usei um conjunto de teste de treinamento.

Outra coisa que fiz foi mudar o conjunto de dados para df porque é mais fácil de escrever. O conjunto de dados é a variável para os dados originais.

Com esta tabela, salvei como saída, é por isso que temos esses coeficientes.

Regressão linear em Python

Para trazer isso como um visual, clique em Fechar e aplicar .

Regressão linear em Python

Agora temos um gráfico de barras . Também usei formatação condicional para mostrar os pontos positivos e negativos.

Regressão linear em Python


Como instalar o DAX Studio e o editor tabular no LuckyTemplates
Definir as configurações de consulta no LuckyTemplates DAX Studio
Parâmetros do LuckyTemplates por meio do Query Editor

Conclusão

Concluindo, entender os principais influenciadores e implementar a regressão linear em Python pode ser uma ferramenta poderosa para análise e previsão de dados.

Ao identificar os principais fatores que afetam uma variável dependente e usar a regressão linear para modelar seus relacionamentos, podemos entender e prever melhor os resultados futuros .

Com o uso das poderosas bibliotecas do Python, é fácil implementar a regressão linear e extrair insights significativos dos dados.

Tudo de bom,


Colunas calculadas no SharePoint | Uma visão geral

Colunas calculadas no SharePoint | Uma visão geral

Descubra a importância das colunas calculadas no SharePoint e como elas podem realizar cálculos automáticos e obtenção de dados em suas listas.

Atributos pré-atentivos: como isso pode afetar seu relatório

Atributos pré-atentivos: como isso pode afetar seu relatório

Descubra todos os atributos pré-atentivos e saiba como isso pode impactar significativamente seu relatório do LuckyTemplates

Calcular Dias de Estoque Zero – LuckyTemplates Inventory Management Insights

Calcular Dias de Estoque Zero – LuckyTemplates Inventory Management Insights

Aprenda a contar o número total de dias em que você não tinha estoque por meio dessa técnica eficaz de gerenciamento de inventário do LuckyTemplates.

Usando exibições de gerenciamento dinâmico (DMV) no DAX Studio

Usando exibições de gerenciamento dinâmico (DMV) no DAX Studio

Saiba mais sobre as exibições de gerenciamento dinâmico (DMV) no DAX Studio e como usá-las para carregar conjuntos de dados diretamente no LuckyTemplates.

Variáveis ​​e expressões dentro do editor do Power Query

Variáveis ​​e expressões dentro do editor do Power Query

Este tutorial irá discutir sobre Variáveis e Expressões dentro do Editor do Power Query, destacando a importância de variáveis M e sua sintaxe.

Como calcular a diferença em dias entre compras usando o DAX no LuckyTemplates

Como calcular a diferença em dias entre compras usando o DAX no LuckyTemplates

Aprenda a calcular a diferença em dias entre compras usando DAX no LuckyTemplates com este guia completo.

Calculando a média no LuckyTemplates: isolando os resultados do dia da semana ou do fim de semana usando o DAX

Calculando a média no LuckyTemplates: isolando os resultados do dia da semana ou do fim de semana usando o DAX

Calcular uma média no LuckyTemplates envolve técnicas DAX para obter dados precisos em relatórios de negócios.

O que é self em Python: exemplos do mundo real

O que é self em Python: exemplos do mundo real

O que é self em Python: exemplos do mundo real

Como salvar e carregar um arquivo RDS em R

Como salvar e carregar um arquivo RDS em R

Você aprenderá como salvar e carregar objetos de um arquivo .rds no R. Este blog também abordará como importar objetos do R para o LuckyTemplates.

Primeiros N dias úteis revisitados - uma solução de linguagem de codificação DAX

Primeiros N dias úteis revisitados - uma solução de linguagem de codificação DAX

Neste tutorial de linguagem de codificação DAX, aprenda como usar a função GENERATE e como alterar um título de medida dinamicamente.