·
Cursos Gerais ·
Outros
Envie sua pergunta para a IA e receba a resposta na hora
Texto de pré-visualização
Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Mário Olímpio de Menezes Conteúdo I Transformação de Variáveis 1 Transformações de Variáveis 5 Codificação Fictícia dummy coding 5 II Seleção de Modelos 2 Seleção de Modelos 12 Critérios de avaliação de modelos 12 Exemplo de Seleção de Modelos 14 III Apêndices Criando Fórmulas no R 25 Funções úteis no ajuste de modelos lineares 27 Bibliografia 29 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 3 I 1 Transformações de Variáveis 5 Transformação de Variáveis 1 Transformações de Variáveis Regressão Linear Multivariada A técnica de Regressão Linear Multivariada que é o foco desta Trilha situase dentro do grande tópico das técnicas de Análise Multivariada A Análise Multivariada se refere a todas as técnicas que analisam simultaneamente múltiplas medidas de indivíduos ou objetos sob investigação Assim quaisquer análises simultâneas de mais do que duas variáveis pode ser considerada uma análise multivariada HAIR JR et al 2014 Dados multivariados surgem quando se medem várias variáveis para cada observação na amostra A maioria dos conjuntos de dados coletados por pesquisadores em todas as áreas da ciência são multivariados JOHNSON WICHERN 1992 Codificação Fictícia dummy coding Um problema frequentemente encontrado na regressão múltipla é a incorporação de dados nãométricos tais como gênero ocupação etc na equação de regressão ou seja variáveis categóricas Isso porque a regressão múltipla é limitada a dados métricos numéricos Quando temos variáveis destes tipos nominal ou ordinal elas devem ser transformadas em variáveis numéricas utilizando um esquema de codificação dentre os esquemas possíveis de transformação há a codificação de zeros e uns chamada de dummy coding Assumindo que xi seja um fator com k níveis a submatriz de X correspondente a xi é uma matriz n k de zeros Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 5 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos e uns onde o jésimo elemento na iésima linha é um quando xi1 estiver no jésimo nível Suponha um conjunto de dados que contém uma variável categórica nominal indicando o continente de origem de uma observação indivíduo etc conforme mostrado no Quadro 1 Quadro 1 Conjunto de dados exemplo uma variável categórica Observ Continente 01 Africa 02 Europa 03 America 04 Asia 05 Oceania Fonte Elaborado pelo próprio autor Utilizando a abordagem de dummy coding esta variável categórica Continente seria transformada conforme mostra o Quadro 2 Quadro 2 Codificação dummy uma variável categórica Observ ContAfrica ContEuropa ContAmerica ContAsia ContOceania 01 1 0 0 0 0 02 0 1 0 0 0 03 0 0 1 0 0 04 0 0 0 1 0 05 0 0 0 0 1 Fonte Elaborado pelo próprio autor Outro esquema de codificação de variáveis categóricas muito utilizado é denominado indicator coding no qual cada categoria nível da variável não métrica também é representado ou por zero ou por um mas utilizase uma categoria de referência isto é um nível da variável categórica será omitido e será representado por zero Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 6 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Utilizando os dados do exemplo anterior e fazendo Africa como o nível de referência a codificação do tipo indicator coding é mostrada no Quadro 3 Quadro 3 Codificação indicator coding uma variável categórica Observ ContAfrica ContEuropa ContAmerica ContAsia ContOceania 01 0 0 0 0 0 02 0 1 0 0 0 03 0 0 1 0 0 04 0 0 0 1 0 05 0 0 0 0 1 Fonte Elaborado pelo próprio autor Ou seja podemos excluir a coluna ContAfrica da codificação e o resultado é mostrado no Quadro 4 Quadro 4 Codificação indicator coding removendo a coluna de referência ContAfrica uma variável categórica Observ ContEuropa ContAmerica ContAsia ContOceania 01 0 0 0 0 02 1 0 0 0 03 0 1 0 0 04 0 0 1 0 05 0 0 0 1 Fonte Elaborado pelo próprio autor Pequeno exemplo de codificação de variáveis dummy no R O R tem algumas facilidades para lidarmos com variáveis categóricas em regressão isto é para a criação de variáveis dummy através da codificação mencionada anteriormente No trecho de código mostrado abaixo um dataframe fictício é criado com as seguintes variáveis Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 7 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos observ identificação da observação contin continente de origem idademax idade máxima observada numvmed número total de visitas ao médico Suponha que queiramos modelar a idade máxima observada como uma função do continente de origem e do número de visitas ao médico ou seja lmidademax numvmed contin A variável contin é categórica com 5 níveis Inicialmente não vamos fazer nenhuma codificação explícita apenas deixaremos o R fazêlo Não estamos interessados em analisar o modelo sob o ponto de vista de significância estatística e nem de poder de explicação apenas a questão da codificação da variável categórica setseed123456 observ sample199size 20 contin samplerepcAfricaAmericaEuropaAsiaOceania10020 idademax rbinomn20size100prob08 numvmed rbinomn20size20prob04 df dataframeobserv contin idademax numvmed df observ contin idademax numvmed 1 60 Oceania 84 9 2 42 America 83 6 3 71 Europa 88 2 4 54 Europa 80 10 5 74 Europa 84 12 6 3 Asia 84 8 7 67 Africa 79 7 8 23 Asia 90 6 9 93 America 82 8 10 38 Europa 84 8 11 2 Asia 88 6 12 80 America 83 7 13 85 Europa 79 7 14 65 Asia 74 6 15 56 Oceania 82 6 16 24 Oceania 76 8 17 46 Africa 84 4 18 14 Asia 76 10 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 8 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos 19 79 Europa 83 10 20 35 Africa 84 5 strdfstrictwidth wrap dataframe 20 obs of 4 variables observ int 60 42 71 54 74 3 67 23 93 38 contin Factor w 5 levels AfricaAmerica 5 2 4 4 4 3 1 3 2 4 idademax int 84 83 88 80 84 84 79 90 82 84 numvmed int 9 6 2 10 12 8 7 6 8 8 mod lmidademax contin numvmed data df summarymod Call lmformula idademax contin numvmed data df Residuals Min 1Q Median 3Q Max 92342 18378 05232 16152 67658 Coefficients Estimate Std Error t value Prt Intercept 8604093 356379 24143 827e13 continAmerica 149196 364619 0409 0689 continAsia 136433 330427 0413 0686 continEuropa 263633 336170 0784 0446 continOceania 004459 372711 0012 0991 numvmed 069517 047300 1470 0164 Signif codes 0 0001 001 005 01 1 Residual standard error 436 on 14 degrees of freedom Multiple Rsquared 01645 Adjusted Rsquared 01338 Fstatistic 05514 on 5 and 14 DF pvalue 07351 Como observamos no código o R atribuiu uma codificação para a variável categórica contin definindo o continente Africa como referência nível 0 Foram criadas as seguintes variáveis dummy continAmerica quando a observação for da America Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 9 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos continAsia quando a observação for da Asia continEuropa quando a observação for da Europa continOceania quando a observação for da Oceania A variável continAfrica não foi criada ela é subentendida considerandose os outros níveis como 0 Para cada variável dummy criada temos uma curva de regressão já que estas variáveis não podem existir simultaneamente ou seja quando uma for 1 as demais ficam como 0 Assim quando utilizamos a função lm do R se a codificação das variáveis categóricas não for realizada explicitamente como mostrado anteriormente o R se encarregará de fazêla utilizando normalmente o último formato mostrado isto é com uma categoria como referência Esta forma automática de se realizar a codificação geralmente está atrelada aos níveis das variáveis do tipo factor que se tem no conjunto de dados Outro problema ou restrição é a inabilidade de se representar diretamente relacionamentos não lineares das variáveis preditoras independentes Uma alternativa para estas situações relacionamentos não lineares é a criação de novas variáveis através de transformações algébricas que eliminam os termos não lineares Outro uso para transformações de variáveis é para acertar violações de alguma das premissas hipóteses estatísticas Assim temos duas razões básicas para transformarmos variáveis Melhorar ou modificar o relacionamento entre as variáveis dependente e independentes não linearidade ou violação de premissas estatísticas do método de mínimos quadrados Habilitar o uso de variáveis não métricas na equação de regressão dummy coding Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 10 II 2 Seleção de Modelos 12 Seleção de Modelos 2 Seleção de Modelos Há muitas maneiras de se avaliar se um certo modelo é melhor do que outro Nossa definição de melhor embarca o conceito de parcimônia no número de preditoras e também o que apresenta os melhores resíduos ie o menor valor de SSE Critérios de avaliação de modelos Algumas avaliações objetivas de modelos de regressão foram criadas dentre elas vamos estudar três possíveis avaliações numéricas baseadas nesta definição do melhor elaboradas a seguir Definição 1 Akaike Information Criterion AIC Um dos critérios mais comumente utilizados para a comparação de modelos é o AIC A ideia do AIC é selecionar o modelo que minimiza o valor negativo da verosimilhança likelihood penalizado pelo número de parâmetros O AIC também é conhecido como o loglikelihood penalizado CRAWLEY 2013 Para um modelo do qual podemos obter o loglikelihood o AIC é dado pela Equação 1 AICM 2 loglikelihood 2pM 1 1 onde pM é o número de parâmetros no modelo e o 1 é adicionado para uma variância estimada Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 12 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Conclusões Para cada critério um menor valor representa um modelo melhor Com cada critério podemos ordenar qual modelo é melhor que o outro Se o número de preditoras é fixo cada critério é simplesmente uma função de SSE Exemplo de Seleção de Modelos Muitas vezes temos um conjunto grande variáveis preditoras explicativas e nemm todas são significativas para um modelo estatístico dos dados Vamos utilizar uma base de dados do pacote faraway prostate que tem nove variáveis relacionadas a um estudo com 97 homens com câncer de próstata A variável resposta é o Logaritmo do antígeno específico da próstata denotada genericamente por Y e as demais são candidatas a preditoras Uma descrição mais detalhada deste conjunto de dados pode ser obtida no help do R prostate libraryfaraway dataprostate prostata prostateclpsalcavollweight agelbphsvilcpgleasonpgg45 namesprostata cYX1X2X3X4X5X6X7X8 headprostata Y X1 X2 X3 X4 X5 X6 X7 X8 1 043078 05798185 27695 50 1386294 0 138629 6 0 2 016252 09942523 33196 58 1386294 0 138629 6 0 3 016252 05108256 26912 74 1386294 0 138629 7 20 4 016252 12039728 32828 58 1386294 0 138629 6 0 5 037156 07514161 34324 62 1386294 0 138629 6 0 6 076547 10498221 32288 50 1386294 0 138629 6 0 prostata6 factorprostata6 A variável svi que corresponde à coluna 6 no conjunto de dados protata é do tipo fator mas está armazenada como um número por isso é necessário fazer uma transformação explícita como mostrado acima Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 14 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Stepwise via AIC Uma maneira de escolher entre as 28 regressões possíveis é utilizar os procedimentos Backward Inclusão passo atrás Forward Inclusão passo a frente ou uma combinação de ambos o Stepwise Seleção passoapasso Comumente estes procedimentos automáticos avaliam em cada passo os pvalores das preditoras em comparação a um αcritico No entanto no R não há nenhuma função que considere o critério do pvalor A função stepwise considera em cada passo os critérios AIC Akaike Information Criterion ou BIC Bayes Information Criterion A seguir estão os comandos das funções na direção backward forward ou em ambas considerando o critério AIC Note que é necessário definir os modelos nulo e cheio pois são argumentos dessas funções Rodando a função no modo backward isto é indo do modelo completo para o modelo nulo nulo lmY 1 dataprostata completo lmY dataprostata stepcompletodataprostatadirectionbackwardtraceFALSE Call lmformula Y X1 X2 X3 X4 X5 data prostata Coefficients Intercept X1 X2 X3 X4 095100 056561 042369 001489 011184 X51 072095 Para fins de comparação e equivalência de resultados rodamos a função step com direção forward e também both stepnuloscopelistlowernulo uppercompleto dataprostata directionforwardtraceFALSE Call lmformula Y X1 X2 X5 X4 X3 data prostata Coefficients Intercept X1 X2 X51 X4 095100 056561 042369 072095 011184 X3 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 15 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos 001489 stepcompletodataprostatadirectionbothtraceFALSE Call lmformula Y X1 X2 X3 X4 X5 data prostata Coefficients Intercept X1 X2 X3 X4 095100 056561 042369 001489 011184 X51 072095 Se colocarmos o argumento traceTRUE os passos intermediários dos procedimentos serão exibidos o que geraria uma saída imensa Podemos notar que os três procedimentos indicaram o modelo com as explicativas X1 X2 X3 X4 e X5 como o melhor segundo o critério AIC Vamos checar summarylmY X1 X2 X3 X4 X5 dataprostata Call lmformula Y X1 X2 X3 X4 X5 data prostata Residuals Min 1Q Median 3Q Max 183505 039396 000414 046336 157888 Coefficients Estimate Std Error t value Prt Intercept 095100 083175 1143 0255882 X1 056561 007459 7583 277e11 X2 042369 016687 2539 0012814 X3 001489 001075 1385 0169528 X4 011184 005805 1927 0057160 X51 072095 020902 3449 0000854 Signif codes 0 0001 001 005 01 1 Residual standard error 07073 on 91 degrees of freedom Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 16 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Multiple Rsquared 06441 Adjusted Rsquared 06245 Fstatistic 3294 on 5 and 91 DF pvalue 22e16 No entanto observamos que a variávei X3 não é significativa e deve ser retirada do modelo Fazemos isso e ajustamos novamente e verificamos o sumário O que acontece summarylmY X1 X2 X4 X5 dataprostata Call lmformula Y X1 X2 X4 X5 data prostata Residuals Min 1Q Median 3Q Max 182653 042270 004362 047041 148530 Coefficients Estimate Std Error t value Prt Intercept 014554 059747 0244 080809 X1 054960 007406 7422 564e11 X2 039088 016600 2355 002067 X4 009009 005617 1604 011213 X51 071174 020996 3390 000103 Signif codes 0 0001 001 005 01 1 Residual standard error 07108 on 92 degrees of freedom Multiple Rsquared 06366 Adjusted Rsquared 06208 Fstatistic 4029 on 4 and 92 DF pvalue 22e16 summarylmY X1 X2 X5 dataprostata Call lmformula Y X1 X2 X5 data prostata Residuals Min 1Q Median 3Q Max 172964 045764 002812 046403 157013 Coefficients Estimate Std Error t value Prt Intercept 026809 054350 0493 062298 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 17 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos X1 055164 007467 7388 63e11 X2 050854 015017 3386 000104 X51 066616 020978 3176 000203 Signif codes 0 0001 001 005 01 1 Residual standard error 07168 on 93 degrees of freedom Multiple Rsquared 06264 Adjusted Rsquared 06144 Fstatistic 5199 on 3 and 93 DF pvalue 22e16 Vemos que os métodos automáticos nem sempre são os melhores na avaliação dos modelos A visão de um especialista tanto no domínio do problema quanto em análise estatística sempre é essencial para a escolha do melhor modelo Melhores Subconjuntos Best subsets Ao invés de listar todas as possíveis regressões com as 8 variáveis candidatas a preditoras a função regsubsets lista os k melhores modelos segundo o critério de menor soma de quadrados residual para subgrupos de preditoras de todos os tamanhos desde uma até oito variáveis explicativas Além de mostrar as melhores regressões a função também retorna os valores da soma de quadrados residual RSS denominado nesta função de s2 da Estatística Cp de Mallows e de R2 ajustado para cada regressão Essas medidas podem ser utilizadas como critérios de seleção destes modelos pois desejase modelos com o menor número p de parâmetros menor s2 R2 ajustado alto e Estatística Cp de Mallows com valor próximo de p A chamada da função regsubsets é subsets regsubsetsy x1 x2 xk dataframe onde subsets é um objeto no qual os resultados estarão armazenados a função não produz resultados então temos que atribuir a saída a um objeto Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 18 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos y x1 x2 xk é uma fórmula especificando o modelo a ser analisado dataframe contém os dados variáveis do modelo As opções mais úteis da função são nbest n especifica quantos modelos de cada tamanho devem ser mantidos no objeto resultante o default é nbest 1 nvmax n especifica o tamanho máximo do modelo número de variáveis a serem incluídas default é nvmax 8 forcein n n especifica um ou mais variáveis a ser incluída em todos os modelos forçadamente As variáveis são especificadas pela ordem na fórmula A função regsubsets não produz nenhum resultado direto Mas podemos obter alguns dos resultados através das funções summary e plot Destes a função plot é bem interessante apesar de o gráfico mostrado ser um tanto quanto estranho à primeira vista No gráfico cada linha representa um modelo os retângulos preenchidos nas colunas indicam as variáveis incluídas no modelo Os números na margem esquerda são os valores da estatística escolhida o default é BIC mas também é possível especificar o R2 ajustado O eixo não é quantitativo mas é ordenado Os tons dos preenchimentos simplesmente representa a ordenação dos valores da estatística especificada Para exemplificar encontraremos a seguir as duas melhores regressões k 2 para cada tamanho Veja que k é o argumento nbest desta função requireleaps rsbs regsubsetsY nbest2dataprostata A Figura 1 apresenta o gráfico sumário da função regsubsets plotrsbs mtextFonte Elaborado pelo autor xpd NA cex 07 side 1 line 45 adj 2 Analisando o gráfico mostrado na Figura 1 na primeira linha parte de baixo temos um modelo com Intercept e X5 com um BIC 28 Já um modelo com Intercept X1 X2 X3 X4 e X5 tem um BIC de 70 Neste gráfico o melhor modelo está no topo com BIC 77 e inclui o Intercept e as variáveis X1 X2 e X5 que coincide com o resultado obtido com a função step após a eliminação das variáveis não significantes X3 e X4 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 19 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Figura 1 Visualização do BIC para diversos modelos pela função regsubsets bic Intercept X1 X2 X3 X4 X51 X6 X7 X8 28 65 66 70 71 73 74 77 Fonte Elaborado pelo autor Podemos também visualizar o resultado através da função summary rs summaryrsbs Subset selection object Call regsubsetsformulaY nbest 2 data prostata 8 Variables and intercept Forced in Forced out X1 FALSE FALSE X2 FALSE FALSE X3 FALSE FALSE X4 FALSE FALSE X51 FALSE FALSE X6 FALSE FALSE X7 FALSE FALSE X8 FALSE FALSE 2 subsets of each size up to 8 Selection Algorithm exhaustive X1 X2 X3 X4 X51 X6 X7 X8 1 1 1 2 2 1 2 2 3 1 3 2 4 1 4 2 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 20 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos 5 1 5 2 6 1 6 2 7 1 7 2 8 1 Abaixo os valores específicos dos índices Cp e do BIC para cada valor de p número de parâmetros Mallows Cp para cada p número de parâmetros summaryrsbscp 1 24394559 80172023 14541475 15958255 6216935 9208478 5626422 8 7074224 5715016 6922392 6401965 6806372 7082184 8047624 15 9000000 BIC para cada p número de parâmetros summaryrsbsbic 1 6605415 2834590 7180379 7051033 7721486 7421419 7531573 8 7381130 7276362 7148111 6960319 6916541 6647110 6541370 15 6198694 Mais detalhes sobre o summaryrsbs pode ser obtido na página de manual digitandose summaryregsubsets Uma outra maneira de se escolher o melhor modelo é analisando os gráficos mostrados a seguir libraryggplot2 libraryggpubr nparametros asnumericrownamesrswhich1 Cp rscp R2ajustado rsadjr2 s2 rsrss dfn dataframenp nparametros Cp Cp g1 ggplotdata dfn aesx np y Cp geompoint geomablineslope 1 intercept 0 themepubr labspubr ylabEstatística Cp xlabNum Parâmetros dfs2 dataframenp nparametros s2 s2 g2 ggplotdfn aesx nparametros y s2 geompoint themepubr labspubr Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 21 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Figura 2 Comportamento de Cp R2 e S2 em função do número de parâmetros do modelo 20 40 60 80 2 4 6 8 Num Parâmetros Estatística Cp 50 60 70 80 2 4 6 8 Num Parâmetros Estatística S2 03 04 05 06 2 4 6 8 Num Parâmetros Estatística R2 Fonte Elaborado pelo autor ylabEstatística S2 xlabNum Parâmetros dfr2 dataframenp nparametros r2 R2ajustado g3 ggplotdfr2 aesx nparametros y r2 geompoint themepubr labspubr ylabEstatística R2 xlabNum Parâmetros themeplotcaption elementtexthjust 0 size 9 labscaption Fonte Elaborado pelo autor ggarrangeg1 g2 g3 ncol 2 nrow 2 Analisando os gráficos acima temos Do gráfico do topo à esquerda notamos que as Estatísticas Cp de Mallows já são próximas de p quando p 5 ou p 6 Dos outros dois gráficos observase que o incremento em R2 ajustado e o decremento em s2 RSS são bem pequenos ao passar de p 5 para p 6 Assim tendo em vista um modelo mais parcimonioso poderíamos escolher o valor de p 5 Podemos visualizar estes resultados na listagem a seguir onde temos os seguintes valores Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 22 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Número de variáveis explicativas no modelo Número de parâmetros contando o Intercept Estatística Cp R2 ajustado Soma dos Quadrados dos Resíduos RSS s2 nvariaveis nparametros1 cbindnvariaveisnparametrosCpR2ajustados2 nvariaveis nparametros Cp R2ajustado s2 1 1 2 24394559 05345838 5891476 2 1 2 80172023 03134515 8690682 3 2 3 14541475 05771246 5296626 4 2 3 15958255 05714480 5367727 5 3 4 6216935 06143899 4778486 6 3 4 9208478 06022748 4928617 7 4 5 5626422 06208036 4648480 8 4 5 7074224 06148766 4721139 9 5 6 5715016 06245476 4552556 10 5 6 6922392 06195505 4613149 11 6 7 6401965 06258707 4486660 12 6 7 6806372 06241784 4506956 13 7 8 7082184 06272521 4420427 14 7 8 8047624 06231666 4468878 15 8 9 9000000 06233681 4416302 Dentre os dois modelos com 5 parâmetros o primeiro constituído pelas variáveis X1 X2 X4 e X5 seria o mais adequado segundo esta análise mas é preciso ver saída completa do summaryrsbs Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 23 III Criando Fórmulas no R 25 Apêndices Criando Fórmulas no R A estrutura de um modelo no R é especificada como uma fórmula do tipo variável resposta variávelis explicativas onde o símbolo significa é modelado como uma função de Assim uma regressão linear simples de y em x seria escrita como y x E uma ANOVA com um fator por exemplo sex um fator de dois níveis seria escrito como y sex O Quadro 5 apresenta exemplos de fórmulas Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 25 Quadro 5 Exemplos de Fórmulas Modelo Fórmula do Modelo Comentários Nulo y 1 1 é o deslocamento em modelos de regres são mas aqui é a média geral de y Regressão y x x é uma variável explicativa contínua Regressão pela ori gem y x 1 Não ajusta o deslocamento ANOVA para um fa tor y sex sex é uma variável categórica de dois fatores ANOVA para um fa tor y sex 1 como o acima mas não ajusta o desloca mento dá duas médias ao invés de uma média e uma diferença ANOVA para dois fa tores y sex genotipo genotipo é uma variável categórica de 4 níveis ANOVA Fatorial y N P K N P e K são fatores de 2 níveis a serem ajustados com suas interações ANOVA para três fa tores y N P K N P K Como o anterior mas não ajusta as intera ções entre os 3 fatores Análise de Covariân cia y x sex Uma única inclinação para y contra x com dois deslocamentos um para cada sexo Análise de Covariân cia y x sex Duas inclinações e dois deslocamentos ANOVA Aninhada y abc Fator c aninhado dentro do fator b dentro do fator a Regressão Múltipla y x z Duas variáveis explicativas contínuas ajuste de superfície plana Regressão Múltipla y x z Ajusta um termo de interação também x z x z Regressão Múltipla y x Ix2 z Iz2 Ajusta um termo quadrático para ambos x e z Regressão Múltipla y polyx 2 z Ajusta um polinômio quadrático para x e linear em z Regressão Múltipla y x z w2 Ajusta três variáveis mais suas interações até dois fatores Modelo não paramé trico y sx sz y é uma função de x e z suavizados em um modelo generalizado aditivo Variáveis resposta e explicativas transfor madas logy I1x sqrtz Todas as três variáveis são transformadas no modelo Fonte CRAWLEY 2013 Traduzido e adaptado pelo autor O lado direito das fórmulas de modelo mostram Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 26 o número de variáveis explicativas e suas identidades seus atributos pexplo contínuas ou categóricas são usualmente definidos antes de se ajustar o modelo Ou seja você deve saber isso previamente As interações entre as variáveis explicativas se existirem Termos não lineares nas variáveis explicativas Do lado direito do til também podem ser especificados termos de erros ou deslocamentos offsets em alguns casos especiais As variáveis explicativas também podem ser transformadas ter potências ou polinômios É muito importante notar que os símbolos são utilizados de modo diferente em uma fórmula de modelo em relação a expressões aritméticas Em particular indica a inclusão de uma variável explicativa no modelo não adição indica a remoção de uma variável explicativa do modelo não subtração importante quando usamos update indica a inclusão de variáveis explicativas e interações não multiplicação indica o aninhamento de variáveis explicativas no modelo não divisão indica o condicionamento não ou lógico de modo que y xz é lido como y como uma função de x dado z Alguns termos também podem ser escritos na forma expandida como mostrado no Quadro 6 Quadro 6 Exemplos de fórmulas em forma expandida Termo Significado ABC é o mesmo que ABCABACBCABC ABC é o mesmo que ABinACinBinA ABC3 é o mesmo que ABC ABC2 é o mesmo que ABC ABC Fonte CRAWLEY 2013 Traduzido e adaptado pelo autor Funções úteis no ajuste de modelos lineares O Quadro 7 apresenta algumas funções úteis quando trabalhamos com ajuste de modelos lineares Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 27 Quadro 7 Funções úteis no ajuste de modelos lineares Função Ação summary Mostra resultados detalhados para o modelo ajustado coefficients Lista os parâmetros do modelo deslocamento e inclinações para o modelo ajustado confint Provês os intervalos de confiança para os parâmetros do modelo 95 por padrão fitted Lista os valores preditos em um modelo ajustado residuals Lista os valores dos resíduos em um modelo ajustado anova Gera uma tabela de ANOVA para o modelo ajustado ou uma tabela de ANOVA comparando dois ou mais modelos ajustados vcov Lista a matriz de covariância para os parâmetros do modelo AIC Imprime mostra o Akaikes Information Criterion plot Gera os gráficos de diagnóstico para a avaliação do ajuste de um modelo predict Usa o modelo ajustado para prever valores de resposta para um novo conjunto de dados Fonte KABACOFF 2015 Traduzido e adaptado pelo autor Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 28 Bibliografia CLAESKENS G HJORT N L Model Selection and Model Averaging Cambridge UK Cambridge University Press 2008 CRAWLEY M J The R Book 2nd ed West Sussex UK Wiley Sons Ltd 2013 HAIR JR J F et al Multivariate Data Analysis 7th ed Harlow Essex UK Pearson Education Ltd 2014 JOHNSON R A WICHERN D W Applied Multivariate Statistical Analysis 3rd ed Englewood Cliffs NJ USA Prentice Hall 1992 KABACOFF R I R in Action Data Analysis and graphics with R 2nd ed Shelter Island NY USA Manning Publications Co 2015 MALLOWS C L Some Comments on Cp Technometrics v 15 n 4 p 661675 1973 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 29
Envie sua pergunta para a IA e receba a resposta na hora
Texto de pré-visualização
Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Mário Olímpio de Menezes Conteúdo I Transformação de Variáveis 1 Transformações de Variáveis 5 Codificação Fictícia dummy coding 5 II Seleção de Modelos 2 Seleção de Modelos 12 Critérios de avaliação de modelos 12 Exemplo de Seleção de Modelos 14 III Apêndices Criando Fórmulas no R 25 Funções úteis no ajuste de modelos lineares 27 Bibliografia 29 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 3 I 1 Transformações de Variáveis 5 Transformação de Variáveis 1 Transformações de Variáveis Regressão Linear Multivariada A técnica de Regressão Linear Multivariada que é o foco desta Trilha situase dentro do grande tópico das técnicas de Análise Multivariada A Análise Multivariada se refere a todas as técnicas que analisam simultaneamente múltiplas medidas de indivíduos ou objetos sob investigação Assim quaisquer análises simultâneas de mais do que duas variáveis pode ser considerada uma análise multivariada HAIR JR et al 2014 Dados multivariados surgem quando se medem várias variáveis para cada observação na amostra A maioria dos conjuntos de dados coletados por pesquisadores em todas as áreas da ciência são multivariados JOHNSON WICHERN 1992 Codificação Fictícia dummy coding Um problema frequentemente encontrado na regressão múltipla é a incorporação de dados nãométricos tais como gênero ocupação etc na equação de regressão ou seja variáveis categóricas Isso porque a regressão múltipla é limitada a dados métricos numéricos Quando temos variáveis destes tipos nominal ou ordinal elas devem ser transformadas em variáveis numéricas utilizando um esquema de codificação dentre os esquemas possíveis de transformação há a codificação de zeros e uns chamada de dummy coding Assumindo que xi seja um fator com k níveis a submatriz de X correspondente a xi é uma matriz n k de zeros Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 5 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos e uns onde o jésimo elemento na iésima linha é um quando xi1 estiver no jésimo nível Suponha um conjunto de dados que contém uma variável categórica nominal indicando o continente de origem de uma observação indivíduo etc conforme mostrado no Quadro 1 Quadro 1 Conjunto de dados exemplo uma variável categórica Observ Continente 01 Africa 02 Europa 03 America 04 Asia 05 Oceania Fonte Elaborado pelo próprio autor Utilizando a abordagem de dummy coding esta variável categórica Continente seria transformada conforme mostra o Quadro 2 Quadro 2 Codificação dummy uma variável categórica Observ ContAfrica ContEuropa ContAmerica ContAsia ContOceania 01 1 0 0 0 0 02 0 1 0 0 0 03 0 0 1 0 0 04 0 0 0 1 0 05 0 0 0 0 1 Fonte Elaborado pelo próprio autor Outro esquema de codificação de variáveis categóricas muito utilizado é denominado indicator coding no qual cada categoria nível da variável não métrica também é representado ou por zero ou por um mas utilizase uma categoria de referência isto é um nível da variável categórica será omitido e será representado por zero Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 6 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Utilizando os dados do exemplo anterior e fazendo Africa como o nível de referência a codificação do tipo indicator coding é mostrada no Quadro 3 Quadro 3 Codificação indicator coding uma variável categórica Observ ContAfrica ContEuropa ContAmerica ContAsia ContOceania 01 0 0 0 0 0 02 0 1 0 0 0 03 0 0 1 0 0 04 0 0 0 1 0 05 0 0 0 0 1 Fonte Elaborado pelo próprio autor Ou seja podemos excluir a coluna ContAfrica da codificação e o resultado é mostrado no Quadro 4 Quadro 4 Codificação indicator coding removendo a coluna de referência ContAfrica uma variável categórica Observ ContEuropa ContAmerica ContAsia ContOceania 01 0 0 0 0 02 1 0 0 0 03 0 1 0 0 04 0 0 1 0 05 0 0 0 1 Fonte Elaborado pelo próprio autor Pequeno exemplo de codificação de variáveis dummy no R O R tem algumas facilidades para lidarmos com variáveis categóricas em regressão isto é para a criação de variáveis dummy através da codificação mencionada anteriormente No trecho de código mostrado abaixo um dataframe fictício é criado com as seguintes variáveis Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 7 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos observ identificação da observação contin continente de origem idademax idade máxima observada numvmed número total de visitas ao médico Suponha que queiramos modelar a idade máxima observada como uma função do continente de origem e do número de visitas ao médico ou seja lmidademax numvmed contin A variável contin é categórica com 5 níveis Inicialmente não vamos fazer nenhuma codificação explícita apenas deixaremos o R fazêlo Não estamos interessados em analisar o modelo sob o ponto de vista de significância estatística e nem de poder de explicação apenas a questão da codificação da variável categórica setseed123456 observ sample199size 20 contin samplerepcAfricaAmericaEuropaAsiaOceania10020 idademax rbinomn20size100prob08 numvmed rbinomn20size20prob04 df dataframeobserv contin idademax numvmed df observ contin idademax numvmed 1 60 Oceania 84 9 2 42 America 83 6 3 71 Europa 88 2 4 54 Europa 80 10 5 74 Europa 84 12 6 3 Asia 84 8 7 67 Africa 79 7 8 23 Asia 90 6 9 93 America 82 8 10 38 Europa 84 8 11 2 Asia 88 6 12 80 America 83 7 13 85 Europa 79 7 14 65 Asia 74 6 15 56 Oceania 82 6 16 24 Oceania 76 8 17 46 Africa 84 4 18 14 Asia 76 10 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 8 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos 19 79 Europa 83 10 20 35 Africa 84 5 strdfstrictwidth wrap dataframe 20 obs of 4 variables observ int 60 42 71 54 74 3 67 23 93 38 contin Factor w 5 levels AfricaAmerica 5 2 4 4 4 3 1 3 2 4 idademax int 84 83 88 80 84 84 79 90 82 84 numvmed int 9 6 2 10 12 8 7 6 8 8 mod lmidademax contin numvmed data df summarymod Call lmformula idademax contin numvmed data df Residuals Min 1Q Median 3Q Max 92342 18378 05232 16152 67658 Coefficients Estimate Std Error t value Prt Intercept 8604093 356379 24143 827e13 continAmerica 149196 364619 0409 0689 continAsia 136433 330427 0413 0686 continEuropa 263633 336170 0784 0446 continOceania 004459 372711 0012 0991 numvmed 069517 047300 1470 0164 Signif codes 0 0001 001 005 01 1 Residual standard error 436 on 14 degrees of freedom Multiple Rsquared 01645 Adjusted Rsquared 01338 Fstatistic 05514 on 5 and 14 DF pvalue 07351 Como observamos no código o R atribuiu uma codificação para a variável categórica contin definindo o continente Africa como referência nível 0 Foram criadas as seguintes variáveis dummy continAmerica quando a observação for da America Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 9 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos continAsia quando a observação for da Asia continEuropa quando a observação for da Europa continOceania quando a observação for da Oceania A variável continAfrica não foi criada ela é subentendida considerandose os outros níveis como 0 Para cada variável dummy criada temos uma curva de regressão já que estas variáveis não podem existir simultaneamente ou seja quando uma for 1 as demais ficam como 0 Assim quando utilizamos a função lm do R se a codificação das variáveis categóricas não for realizada explicitamente como mostrado anteriormente o R se encarregará de fazêla utilizando normalmente o último formato mostrado isto é com uma categoria como referência Esta forma automática de se realizar a codificação geralmente está atrelada aos níveis das variáveis do tipo factor que se tem no conjunto de dados Outro problema ou restrição é a inabilidade de se representar diretamente relacionamentos não lineares das variáveis preditoras independentes Uma alternativa para estas situações relacionamentos não lineares é a criação de novas variáveis através de transformações algébricas que eliminam os termos não lineares Outro uso para transformações de variáveis é para acertar violações de alguma das premissas hipóteses estatísticas Assim temos duas razões básicas para transformarmos variáveis Melhorar ou modificar o relacionamento entre as variáveis dependente e independentes não linearidade ou violação de premissas estatísticas do método de mínimos quadrados Habilitar o uso de variáveis não métricas na equação de regressão dummy coding Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 10 II 2 Seleção de Modelos 12 Seleção de Modelos 2 Seleção de Modelos Há muitas maneiras de se avaliar se um certo modelo é melhor do que outro Nossa definição de melhor embarca o conceito de parcimônia no número de preditoras e também o que apresenta os melhores resíduos ie o menor valor de SSE Critérios de avaliação de modelos Algumas avaliações objetivas de modelos de regressão foram criadas dentre elas vamos estudar três possíveis avaliações numéricas baseadas nesta definição do melhor elaboradas a seguir Definição 1 Akaike Information Criterion AIC Um dos critérios mais comumente utilizados para a comparação de modelos é o AIC A ideia do AIC é selecionar o modelo que minimiza o valor negativo da verosimilhança likelihood penalizado pelo número de parâmetros O AIC também é conhecido como o loglikelihood penalizado CRAWLEY 2013 Para um modelo do qual podemos obter o loglikelihood o AIC é dado pela Equação 1 AICM 2 loglikelihood 2pM 1 1 onde pM é o número de parâmetros no modelo e o 1 é adicionado para uma variância estimada Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 12 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Conclusões Para cada critério um menor valor representa um modelo melhor Com cada critério podemos ordenar qual modelo é melhor que o outro Se o número de preditoras é fixo cada critério é simplesmente uma função de SSE Exemplo de Seleção de Modelos Muitas vezes temos um conjunto grande variáveis preditoras explicativas e nemm todas são significativas para um modelo estatístico dos dados Vamos utilizar uma base de dados do pacote faraway prostate que tem nove variáveis relacionadas a um estudo com 97 homens com câncer de próstata A variável resposta é o Logaritmo do antígeno específico da próstata denotada genericamente por Y e as demais são candidatas a preditoras Uma descrição mais detalhada deste conjunto de dados pode ser obtida no help do R prostate libraryfaraway dataprostate prostata prostateclpsalcavollweight agelbphsvilcpgleasonpgg45 namesprostata cYX1X2X3X4X5X6X7X8 headprostata Y X1 X2 X3 X4 X5 X6 X7 X8 1 043078 05798185 27695 50 1386294 0 138629 6 0 2 016252 09942523 33196 58 1386294 0 138629 6 0 3 016252 05108256 26912 74 1386294 0 138629 7 20 4 016252 12039728 32828 58 1386294 0 138629 6 0 5 037156 07514161 34324 62 1386294 0 138629 6 0 6 076547 10498221 32288 50 1386294 0 138629 6 0 prostata6 factorprostata6 A variável svi que corresponde à coluna 6 no conjunto de dados protata é do tipo fator mas está armazenada como um número por isso é necessário fazer uma transformação explícita como mostrado acima Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 14 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Stepwise via AIC Uma maneira de escolher entre as 28 regressões possíveis é utilizar os procedimentos Backward Inclusão passo atrás Forward Inclusão passo a frente ou uma combinação de ambos o Stepwise Seleção passoapasso Comumente estes procedimentos automáticos avaliam em cada passo os pvalores das preditoras em comparação a um αcritico No entanto no R não há nenhuma função que considere o critério do pvalor A função stepwise considera em cada passo os critérios AIC Akaike Information Criterion ou BIC Bayes Information Criterion A seguir estão os comandos das funções na direção backward forward ou em ambas considerando o critério AIC Note que é necessário definir os modelos nulo e cheio pois são argumentos dessas funções Rodando a função no modo backward isto é indo do modelo completo para o modelo nulo nulo lmY 1 dataprostata completo lmY dataprostata stepcompletodataprostatadirectionbackwardtraceFALSE Call lmformula Y X1 X2 X3 X4 X5 data prostata Coefficients Intercept X1 X2 X3 X4 095100 056561 042369 001489 011184 X51 072095 Para fins de comparação e equivalência de resultados rodamos a função step com direção forward e também both stepnuloscopelistlowernulo uppercompleto dataprostata directionforwardtraceFALSE Call lmformula Y X1 X2 X5 X4 X3 data prostata Coefficients Intercept X1 X2 X51 X4 095100 056561 042369 072095 011184 X3 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 15 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos 001489 stepcompletodataprostatadirectionbothtraceFALSE Call lmformula Y X1 X2 X3 X4 X5 data prostata Coefficients Intercept X1 X2 X3 X4 095100 056561 042369 001489 011184 X51 072095 Se colocarmos o argumento traceTRUE os passos intermediários dos procedimentos serão exibidos o que geraria uma saída imensa Podemos notar que os três procedimentos indicaram o modelo com as explicativas X1 X2 X3 X4 e X5 como o melhor segundo o critério AIC Vamos checar summarylmY X1 X2 X3 X4 X5 dataprostata Call lmformula Y X1 X2 X3 X4 X5 data prostata Residuals Min 1Q Median 3Q Max 183505 039396 000414 046336 157888 Coefficients Estimate Std Error t value Prt Intercept 095100 083175 1143 0255882 X1 056561 007459 7583 277e11 X2 042369 016687 2539 0012814 X3 001489 001075 1385 0169528 X4 011184 005805 1927 0057160 X51 072095 020902 3449 0000854 Signif codes 0 0001 001 005 01 1 Residual standard error 07073 on 91 degrees of freedom Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 16 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Multiple Rsquared 06441 Adjusted Rsquared 06245 Fstatistic 3294 on 5 and 91 DF pvalue 22e16 No entanto observamos que a variávei X3 não é significativa e deve ser retirada do modelo Fazemos isso e ajustamos novamente e verificamos o sumário O que acontece summarylmY X1 X2 X4 X5 dataprostata Call lmformula Y X1 X2 X4 X5 data prostata Residuals Min 1Q Median 3Q Max 182653 042270 004362 047041 148530 Coefficients Estimate Std Error t value Prt Intercept 014554 059747 0244 080809 X1 054960 007406 7422 564e11 X2 039088 016600 2355 002067 X4 009009 005617 1604 011213 X51 071174 020996 3390 000103 Signif codes 0 0001 001 005 01 1 Residual standard error 07108 on 92 degrees of freedom Multiple Rsquared 06366 Adjusted Rsquared 06208 Fstatistic 4029 on 4 and 92 DF pvalue 22e16 summarylmY X1 X2 X5 dataprostata Call lmformula Y X1 X2 X5 data prostata Residuals Min 1Q Median 3Q Max 172964 045764 002812 046403 157013 Coefficients Estimate Std Error t value Prt Intercept 026809 054350 0493 062298 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 17 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos X1 055164 007467 7388 63e11 X2 050854 015017 3386 000104 X51 066616 020978 3176 000203 Signif codes 0 0001 001 005 01 1 Residual standard error 07168 on 93 degrees of freedom Multiple Rsquared 06264 Adjusted Rsquared 06144 Fstatistic 5199 on 3 and 93 DF pvalue 22e16 Vemos que os métodos automáticos nem sempre são os melhores na avaliação dos modelos A visão de um especialista tanto no domínio do problema quanto em análise estatística sempre é essencial para a escolha do melhor modelo Melhores Subconjuntos Best subsets Ao invés de listar todas as possíveis regressões com as 8 variáveis candidatas a preditoras a função regsubsets lista os k melhores modelos segundo o critério de menor soma de quadrados residual para subgrupos de preditoras de todos os tamanhos desde uma até oito variáveis explicativas Além de mostrar as melhores regressões a função também retorna os valores da soma de quadrados residual RSS denominado nesta função de s2 da Estatística Cp de Mallows e de R2 ajustado para cada regressão Essas medidas podem ser utilizadas como critérios de seleção destes modelos pois desejase modelos com o menor número p de parâmetros menor s2 R2 ajustado alto e Estatística Cp de Mallows com valor próximo de p A chamada da função regsubsets é subsets regsubsetsy x1 x2 xk dataframe onde subsets é um objeto no qual os resultados estarão armazenados a função não produz resultados então temos que atribuir a saída a um objeto Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 18 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos y x1 x2 xk é uma fórmula especificando o modelo a ser analisado dataframe contém os dados variáveis do modelo As opções mais úteis da função são nbest n especifica quantos modelos de cada tamanho devem ser mantidos no objeto resultante o default é nbest 1 nvmax n especifica o tamanho máximo do modelo número de variáveis a serem incluídas default é nvmax 8 forcein n n especifica um ou mais variáveis a ser incluída em todos os modelos forçadamente As variáveis são especificadas pela ordem na fórmula A função regsubsets não produz nenhum resultado direto Mas podemos obter alguns dos resultados através das funções summary e plot Destes a função plot é bem interessante apesar de o gráfico mostrado ser um tanto quanto estranho à primeira vista No gráfico cada linha representa um modelo os retângulos preenchidos nas colunas indicam as variáveis incluídas no modelo Os números na margem esquerda são os valores da estatística escolhida o default é BIC mas também é possível especificar o R2 ajustado O eixo não é quantitativo mas é ordenado Os tons dos preenchimentos simplesmente representa a ordenação dos valores da estatística especificada Para exemplificar encontraremos a seguir as duas melhores regressões k 2 para cada tamanho Veja que k é o argumento nbest desta função requireleaps rsbs regsubsetsY nbest2dataprostata A Figura 1 apresenta o gráfico sumário da função regsubsets plotrsbs mtextFonte Elaborado pelo autor xpd NA cex 07 side 1 line 45 adj 2 Analisando o gráfico mostrado na Figura 1 na primeira linha parte de baixo temos um modelo com Intercept e X5 com um BIC 28 Já um modelo com Intercept X1 X2 X3 X4 e X5 tem um BIC de 70 Neste gráfico o melhor modelo está no topo com BIC 77 e inclui o Intercept e as variáveis X1 X2 e X5 que coincide com o resultado obtido com a função step após a eliminação das variáveis não significantes X3 e X4 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 19 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Figura 1 Visualização do BIC para diversos modelos pela função regsubsets bic Intercept X1 X2 X3 X4 X51 X6 X7 X8 28 65 66 70 71 73 74 77 Fonte Elaborado pelo autor Podemos também visualizar o resultado através da função summary rs summaryrsbs Subset selection object Call regsubsetsformulaY nbest 2 data prostata 8 Variables and intercept Forced in Forced out X1 FALSE FALSE X2 FALSE FALSE X3 FALSE FALSE X4 FALSE FALSE X51 FALSE FALSE X6 FALSE FALSE X7 FALSE FALSE X8 FALSE FALSE 2 subsets of each size up to 8 Selection Algorithm exhaustive X1 X2 X3 X4 X51 X6 X7 X8 1 1 1 2 2 1 2 2 3 1 3 2 4 1 4 2 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 20 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos 5 1 5 2 6 1 6 2 7 1 7 2 8 1 Abaixo os valores específicos dos índices Cp e do BIC para cada valor de p número de parâmetros Mallows Cp para cada p número de parâmetros summaryrsbscp 1 24394559 80172023 14541475 15958255 6216935 9208478 5626422 8 7074224 5715016 6922392 6401965 6806372 7082184 8047624 15 9000000 BIC para cada p número de parâmetros summaryrsbsbic 1 6605415 2834590 7180379 7051033 7721486 7421419 7531573 8 7381130 7276362 7148111 6960319 6916541 6647110 6541370 15 6198694 Mais detalhes sobre o summaryrsbs pode ser obtido na página de manual digitandose summaryregsubsets Uma outra maneira de se escolher o melhor modelo é analisando os gráficos mostrados a seguir libraryggplot2 libraryggpubr nparametros asnumericrownamesrswhich1 Cp rscp R2ajustado rsadjr2 s2 rsrss dfn dataframenp nparametros Cp Cp g1 ggplotdata dfn aesx np y Cp geompoint geomablineslope 1 intercept 0 themepubr labspubr ylabEstatística Cp xlabNum Parâmetros dfs2 dataframenp nparametros s2 s2 g2 ggplotdfn aesx nparametros y s2 geompoint themepubr labspubr Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 21 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Figura 2 Comportamento de Cp R2 e S2 em função do número de parâmetros do modelo 20 40 60 80 2 4 6 8 Num Parâmetros Estatística Cp 50 60 70 80 2 4 6 8 Num Parâmetros Estatística S2 03 04 05 06 2 4 6 8 Num Parâmetros Estatística R2 Fonte Elaborado pelo autor ylabEstatística S2 xlabNum Parâmetros dfr2 dataframenp nparametros r2 R2ajustado g3 ggplotdfr2 aesx nparametros y r2 geompoint themepubr labspubr ylabEstatística R2 xlabNum Parâmetros themeplotcaption elementtexthjust 0 size 9 labscaption Fonte Elaborado pelo autor ggarrangeg1 g2 g3 ncol 2 nrow 2 Analisando os gráficos acima temos Do gráfico do topo à esquerda notamos que as Estatísticas Cp de Mallows já são próximas de p quando p 5 ou p 6 Dos outros dois gráficos observase que o incremento em R2 ajustado e o decremento em s2 RSS são bem pequenos ao passar de p 5 para p 6 Assim tendo em vista um modelo mais parcimonioso poderíamos escolher o valor de p 5 Podemos visualizar estes resultados na listagem a seguir onde temos os seguintes valores Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 22 Material Complementar Trilha 05 Transformação de Variáveis e Seleção de Modelos Número de variáveis explicativas no modelo Número de parâmetros contando o Intercept Estatística Cp R2 ajustado Soma dos Quadrados dos Resíduos RSS s2 nvariaveis nparametros1 cbindnvariaveisnparametrosCpR2ajustados2 nvariaveis nparametros Cp R2ajustado s2 1 1 2 24394559 05345838 5891476 2 1 2 80172023 03134515 8690682 3 2 3 14541475 05771246 5296626 4 2 3 15958255 05714480 5367727 5 3 4 6216935 06143899 4778486 6 3 4 9208478 06022748 4928617 7 4 5 5626422 06208036 4648480 8 4 5 7074224 06148766 4721139 9 5 6 5715016 06245476 4552556 10 5 6 6922392 06195505 4613149 11 6 7 6401965 06258707 4486660 12 6 7 6806372 06241784 4506956 13 7 8 7082184 06272521 4420427 14 7 8 8047624 06231666 4468878 15 8 9 9000000 06233681 4416302 Dentre os dois modelos com 5 parâmetros o primeiro constituído pelas variáveis X1 X2 X4 e X5 seria o mais adequado segundo esta análise mas é preciso ver saída completa do summaryrsbs Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 23 III Criando Fórmulas no R 25 Apêndices Criando Fórmulas no R A estrutura de um modelo no R é especificada como uma fórmula do tipo variável resposta variávelis explicativas onde o símbolo significa é modelado como uma função de Assim uma regressão linear simples de y em x seria escrita como y x E uma ANOVA com um fator por exemplo sex um fator de dois níveis seria escrito como y sex O Quadro 5 apresenta exemplos de fórmulas Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 25 Quadro 5 Exemplos de Fórmulas Modelo Fórmula do Modelo Comentários Nulo y 1 1 é o deslocamento em modelos de regres são mas aqui é a média geral de y Regressão y x x é uma variável explicativa contínua Regressão pela ori gem y x 1 Não ajusta o deslocamento ANOVA para um fa tor y sex sex é uma variável categórica de dois fatores ANOVA para um fa tor y sex 1 como o acima mas não ajusta o desloca mento dá duas médias ao invés de uma média e uma diferença ANOVA para dois fa tores y sex genotipo genotipo é uma variável categórica de 4 níveis ANOVA Fatorial y N P K N P e K são fatores de 2 níveis a serem ajustados com suas interações ANOVA para três fa tores y N P K N P K Como o anterior mas não ajusta as intera ções entre os 3 fatores Análise de Covariân cia y x sex Uma única inclinação para y contra x com dois deslocamentos um para cada sexo Análise de Covariân cia y x sex Duas inclinações e dois deslocamentos ANOVA Aninhada y abc Fator c aninhado dentro do fator b dentro do fator a Regressão Múltipla y x z Duas variáveis explicativas contínuas ajuste de superfície plana Regressão Múltipla y x z Ajusta um termo de interação também x z x z Regressão Múltipla y x Ix2 z Iz2 Ajusta um termo quadrático para ambos x e z Regressão Múltipla y polyx 2 z Ajusta um polinômio quadrático para x e linear em z Regressão Múltipla y x z w2 Ajusta três variáveis mais suas interações até dois fatores Modelo não paramé trico y sx sz y é uma função de x e z suavizados em um modelo generalizado aditivo Variáveis resposta e explicativas transfor madas logy I1x sqrtz Todas as três variáveis são transformadas no modelo Fonte CRAWLEY 2013 Traduzido e adaptado pelo autor O lado direito das fórmulas de modelo mostram Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 26 o número de variáveis explicativas e suas identidades seus atributos pexplo contínuas ou categóricas são usualmente definidos antes de se ajustar o modelo Ou seja você deve saber isso previamente As interações entre as variáveis explicativas se existirem Termos não lineares nas variáveis explicativas Do lado direito do til também podem ser especificados termos de erros ou deslocamentos offsets em alguns casos especiais As variáveis explicativas também podem ser transformadas ter potências ou polinômios É muito importante notar que os símbolos são utilizados de modo diferente em uma fórmula de modelo em relação a expressões aritméticas Em particular indica a inclusão de uma variável explicativa no modelo não adição indica a remoção de uma variável explicativa do modelo não subtração importante quando usamos update indica a inclusão de variáveis explicativas e interações não multiplicação indica o aninhamento de variáveis explicativas no modelo não divisão indica o condicionamento não ou lógico de modo que y xz é lido como y como uma função de x dado z Alguns termos também podem ser escritos na forma expandida como mostrado no Quadro 6 Quadro 6 Exemplos de fórmulas em forma expandida Termo Significado ABC é o mesmo que ABCABACBCABC ABC é o mesmo que ABinACinBinA ABC3 é o mesmo que ABC ABC2 é o mesmo que ABC ABC Fonte CRAWLEY 2013 Traduzido e adaptado pelo autor Funções úteis no ajuste de modelos lineares O Quadro 7 apresenta algumas funções úteis quando trabalhamos com ajuste de modelos lineares Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 27 Quadro 7 Funções úteis no ajuste de modelos lineares Função Ação summary Mostra resultados detalhados para o modelo ajustado coefficients Lista os parâmetros do modelo deslocamento e inclinações para o modelo ajustado confint Provês os intervalos de confiança para os parâmetros do modelo 95 por padrão fitted Lista os valores preditos em um modelo ajustado residuals Lista os valores dos resíduos em um modelo ajustado anova Gera uma tabela de ANOVA para o modelo ajustado ou uma tabela de ANOVA comparando dois ou mais modelos ajustados vcov Lista a matriz de covariância para os parâmetros do modelo AIC Imprime mostra o Akaikes Information Criterion plot Gera os gráficos de diagnóstico para a avaliação do ajuste de um modelo predict Usa o modelo ajustado para prever valores de resposta para um novo conjunto de dados Fonte KABACOFF 2015 Traduzido e adaptado pelo autor Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 28 Bibliografia CLAESKENS G HJORT N L Model Selection and Model Averaging Cambridge UK Cambridge University Press 2008 CRAWLEY M J The R Book 2nd ed West Sussex UK Wiley Sons Ltd 2013 HAIR JR J F et al Multivariate Data Analysis 7th ed Harlow Essex UK Pearson Education Ltd 2014 JOHNSON R A WICHERN D W Applied Multivariate Statistical Analysis 3rd ed Englewood Cliffs NJ USA Prentice Hall 1992 KABACOFF R I R in Action Data Analysis and graphics with R 2nd ed Shelter Island NY USA Manning Publications Co 2015 MALLOWS C L Some Comments on Cp Technometrics v 15 n 4 p 661675 1973 Ciência de Dados BIG DATA ANALYTICS BIG DATA Analytics Análise Estatística 29