Vamos supor que você seja um pesquisador / economista de ciências sociais tentando encontrar preditores relevantes de demanda por um serviço. Você tem duas variáveis dependentes / de resultado que descrevem a demanda (usando o serviço sim / não e o número de ocasiões). Você tem 10 variáveis preditoras / independentes que poderiam explicar teoricamente a demanda (por exemplo, idade, sexo, renda, preço, raça, etc.). A execução de duas regressões múltiplas separadas produzirá 20 estimativas de coeficientes e seus valores de p. Com variáveis independentes suficientes em suas regressões, mais cedo ou mais tarde, você encontrará pelo menos uma variável com uma correlação estatisticamente significativa entre as variáveis dependentes e independentes.
Minha pergunta: é uma boa idéia corrigir os valores de p para vários testes se eu quiser incluir todas as variáveis independentes na regressão? Todas as referências a trabalhos anteriores são muito apreciadas.
fonte
Respostas:
Parece que sua pergunta geralmente trata do problema de identificar bons preditores. Nesse caso, você deve considerar o uso de algum tipo de regressão penalizada (os métodos que lidam com a seleção de variáveis ou características também são relevantes), por exemplo, penalidades L1, L2 (ou uma combinação delas, a chamada elasticasticnet ) (procure perguntas relacionadas sobre site, ou o pacote R penalized and elasticnet , entre outros).
Agora, sobre como corrigir valores de p para seus coeficientes de regressão (ou equivalentemente seus coeficientes de correlação parciais) para proteger contra otimismo excessivo (por exemplo, com Bonferroni ou, melhor, métodos de abandono), parece que isso só seria relevante se você estivesse considerando um modelo e procure os preditores que contribuem com uma parte significativa da variação explicada, ou seja, se você não executar a seleção do modelo (com seleção por etapas ou teste hierárquico). Este artigo pode ser um bom começo: Ajustes de Bonferroni em testes para coeficientes de regressão . Esteja ciente de que essa correção não o protegerá contra problemas de multicolinearidade, que afetam os valores de p relatados.
Dados seus dados, eu recomendaria o uso de algum tipo de técnicas de seleção de modelo iterativo. Em R, por exemplo, aR2
stepAIC
função permite executar a seleção de modelo passo a passo pelo AIC exato. Você também pode estimar a importância relativa de seus preditores com base na contribuição deles para o usando o boostrap (consulte o pacote relaimpo ). Penso que a medida do tamanho do efeito de relatório ou% da variação explicada são mais informativos que o valor-p, especialmente em um modelo confirmatório.Deve-se notar que as abordagens passo a passo também têm suas desvantagens (por exemplo, os testes de Wald não são adaptados às hipóteses condicionais induzidas pelo procedimento por etapas) ou como indicado por Frank Harrell no R mailing ", a seleção de variáveis passo a passo com base na AIC tem todas as vantagens. problemas de seleção gradual de variáveis com base em valores P. AIC é apenas uma reafirmação do valor P "(mas a AIC permanece útil se o conjunto de preditores já estiver definido); uma questão relacionada - Uma variável é significativa em um modelo de regressão linear? - levantou comentários interessantes ( @Rob , entre outros) sobre o uso da AIC para seleção de variáveis. Anexo algumas referências no final (incluindo documentos gentilmente fornecidos por @Stephan); também há muitas outras referências no P.Mean .
Frank Harrell escreveu um livro sobre Estratégia de Modelagem de Regressão, que inclui muitas discussões e conselhos sobre esse problema (§4.3, pp. 56-60). Ele também desenvolveu rotinas R eficientes para lidar com modelos lineares generalizados (consulte os pacotes Design ou rms ). Então, acho que você definitivamente precisa dar uma olhada (as apostilas dele estão disponíveis em sua página inicial).
Referências
step.adj()
no pacote R someMTP .fonte
Em grande medida, você pode fazer o que quiser, desde que mantenha dados suficientes aleatoriamente para testar o modelo que você criar com base nos dados retidos. Uma divisão de 50% pode ser uma boa ideia. Sim, você perde alguma capacidade de detectar relacionamentos, mas o que você ganha é enorme; ou seja, a capacidade de replicar seu trabalho antes de ser publicado. Não importa o quão sofisticadas sejam as técnicas estatísticas, você ficará chocado com quantos preditores "significativos" acabam sendo totalmente inúteis quando aplicados aos dados de confirmação.
Lembre-se também de que "relevante" para a previsão significa mais do que um baixo valor de p. Afinal, isso significa apenas que é provável que um relacionamento encontrado nesse conjunto de dados em particular não seja devido ao acaso. Para previsão, é realmente mais importante encontrar as variáveis que exercem influência substancial sobre a previsão e (sem ajustar demais o modelo); isto é, encontrar as variáveis que provavelmente são "reais" e, quando variadas ao longo de uma faixa razoável de valores (não apenas os valores que podem ocorrer na sua amostra!), faz com que a previsão e varie consideravelmente. Quando você possui dados de espera para confirmar um modelo, pode ficar mais confortável provisoriamente mantendo variáveis marginalmente "significativas" que podem não ter valores p baixos.
Por esses motivos (e baseando-me na boa resposta de chl), embora eu tenha achado bastante úteis modelos passo a passo, comparações da AIC e correções de Bonferroni (especialmente com centenas ou milhares de possíveis preditores em jogo), esses não devem ser os únicos determinantes de quais variáveis digite seu modelo. Também não perca de vista as orientações fornecidas pela teoria: as variáveis com forte justificativa teórica para estar em um modelo geralmente devem ser mantidas, mesmo quando não são significativas, desde que não criem equações mal condicionadas ( por exemplo, colinearidade) .
NB : Após você ter se estabelecido em um modelo e confirmado sua utilidade com os dados de espera, é bom recombinar os dados retidos com os dados de espera para a estimativa final. Portanto, nada se perde em termos da precisão com a qual você pode estimar os coeficientes do modelo.
fonte
Eu acho que essa é uma pergunta muito boa; chega ao cerne do contencioso "problema" de múltiplos testes que assola campos que vão da epidemiologia à econometria. Afinal, como pode nós saber se o significado que descobrimos é espúrio ou não? Quão verdadeiro é o nosso modelo multivariável?
Em termos de abordagens técnicas para compensar a probabilidade de publicar variáveis de ruído, eu concordaria sinceramente com 'whuber' que usar uma parte da sua amostra como dados de treinamento e o restante como dados de teste é uma boa idéia. Esta é uma abordagem discutida na literatura técnica; portanto, se você dedicar algum tempo, provavelmente poderá descobrir algumas boas diretrizes para quando e como usá-la.
Mas, para abordar mais diretamente a filosofia dos testes múltiplos, sugiro que você leia os artigos mencionados abaixo, alguns dos quais apóiam a posição de que o ajuste para testes múltiplos geralmente é prejudicial (custa energia), desnecessário e pode até ser uma falácia lógica . Eu, por um lado, não aceito automaticamente a alegação de que nossa capacidade de investigar um preditor em potencial é inexoravelmente reduzida pela investigação de outro. A taxa de erro tipo 1 familiar pode aumentar à medida que incluímos mais preditores em um determinado modelo, mas desde que não ultrapassemos os limites do tamanho da amostra, a probabilidade de erro tipo 1 para cada indivíduopreditor é constante; e controlar erros familiares não indica qual variável específica é ruído e qual não é. Obviamente, também existem contra-argumentos convincentes.
Assim, desde que você limite sua lista de variáveis em potencial àquelas que são plausíveis (ou seja, teriam caminhos conhecidos para o resultado), o risco de falsidade já será tratado de maneira razoável.
No entanto, eu acrescentaria que um modelo preditivo não está tão preocupado com o "valor de verdade" de seus preditores quanto um modelo causal ; pode haver muita confusão no modelo, mas, enquanto explicarmos um grande grau da variação, não ficaremos muito preocupados. Isso facilita o trabalho, pelo menos em um sentido.
Felicidades,
Brenden, Consultor em Bioestatística
PS: convém fazer uma regressão de Poisson inflada a zero para os dados que você descreve, em vez de duas regressões separadas.
fonte
Há boas respostas aqui. Deixe-me acrescentar alguns pontos pequenos que não vejo cobertos em outro lugar.
Primeiro, qual é a natureza das suas variáveis de resposta? Mais especificamente, eles são entendidos como relacionados entre si? Você só deve fazer duas regressões múltiplas separadas se elas forem entendidas como independentes (teoricamente) / se os resíduos dos dois modelos forem independentes (empiricamente). Caso contrário, você deve considerar uma regressão multivariada. ('Multivariado' significa> 1 variável de resposta; 'múltiplo' significa> 1 variável preditora.)
fonte
Você pode fazer uma regressão aparentemente não relacionada e usar um teste F. Coloque seus dados em um formulário como este:
para que os preditores do seu primeiro resultado tenham seus valores quando esse resultado for a variável y e 0, caso contrário, e vice-versa. Portanto, seu y é uma lista dos dois resultados. P11 e P12 são os dois preditores para o primeiro resultado e P21 e P22 são os dois preditores para o segundo resultado. Se o sexo, por exemplo, é um preditor de ambos os resultados, seu uso para prever o resultado 1 deve estar em uma variável / coluna separada ao prever o resultado 2. Isso permite que sua regressão tenha inclinações / impactos diferentes para o sexo para cada resultado.
Nesta estrutura, você pode usar procedimentos padrão de teste F.
fonte