Suponha que uma determinada doença ( ) tenha uma prevalência de . Suponha também que um determinado sintoma ( ) tenha uma prevalência (na população geral = pessoas com essa doença D e pessoas sem essa doença [provavelmente com outra doença, mas não é importante]) de . Em uma pesquisa anterior, descobriu-se que a probabilidade condicional (a probabilidade de apresentar o sintoma , dada a doença é de ).
Primeira pergunta : poderia ser interpretado como equivalente à prevalência do sintoma no grupo de pessoas com a doença ?
Segunda pergunta : quero criar em R um conjunto de dados, o que mostra que:
Como fazer isso? Se eu usar simplesmente a sample
função, meu conjunto de dados não possui as informações que :
symptom <- sample(c("yes","no"), 1000, prob=c(0.005, 0.995), rep=T)
disease <- sample(c("yes","no"), 1000, prob=c(0.002, 0.998), rep=T)
Então, minha pergunta é: como criar um bom conjunto de dados, incluindo a probabilidade condicional que desejo?
EDIT : Também postei a mesma pergunta no stackoverflow.com ( /programming/7291935/how-to-create-a-dataset-with-conditional-probability ), porque, na minha opinião, minha pergunta é herdado do programa de linguagem R, mas também da teoria estatística.
fonte
Respostas:
Você conhece as seguintes probabilidades marginais
e que
a/(a+b) = 0.3
assim isso se tornae de fato
a/(a+c) = 0.18
como você declarou.Então, no R você poderia codificar algo como
embora você deva observar que 1000 é uma amostra pequena quando um dos eventos tem uma probabilidade de 0,0009 de acontecer.
fonte
A
table
função retorna um objeto semelhante a uma matriz:Então o Pr (D | S = "sim") =
Alterei o problema porque na primeira vez em que o executei com seus parâmetros, obtive:
E eu pensei que um Pr (D | S = "yes") de 0 era bastante chato. Se você deseja executar isso muitas vezes, construa uma função e use essa função com a
replicate
funçãoAqui está um método para construir um conjunto de dados que aplica uma probabilidade diferente de doença no grupo sintomático que é 3 vezes maior do que o usado no grupo assintomático:
fonte
Eu diria que sua pergunta não é realmente muito dependente da linguagem R e é mais apropriada aqui, porque - para ser franco - a geração de dados como esse é principalmente uma tarefa estatística, e não de programação.
Primeira pergunta: p (S | D) é o risco de ter o sintoma S em uma população com doença D. Pode ser diretamente comparável à prevalência de certas advertências, como o sintoma que não afeta a duração da doença. Considere o seguinte exemplo: Um dos sintomas do SuperEbola é Morte instantânea, com p (Morte | Super Ebola) = 0,99. Aqui, sua prevalência do sintoma seria realmente extremamente baixa (de fato, 0,00), pois ninguém que você pode experimentar a doença tem o sintoma.
Segunda pergunta: eu voltaria a isso de uma maneira um pouco gradual. Primeiro, calcule o risco de linha de base do sintoma que você precisará para obter 0,15 em toda a população, levando em consideração que 0,03% da sua população terá uma taxa mais alta. Em seguida, gere essencialmente duas probabilidades:
Em seguida, gere dois números aleatórios uniformes. Se o primeiro for menor que 0,003, eles têm a doença. Isso é inserido no cálculo de risco do segundo e, se o número aleatório de cada indivíduo for menor que o risco, eles terão o sintoma.
Essa é uma maneira penosa e deselegante de fazer as coisas, e é provável que alguém venha com uma abordagem muito mais eficiente. Mas, nos estudos de simulação, encontro cada etapa do código, e é útil mantê-lo o mais próximo possível de ver um conjunto de dados no mundo real.
fonte
Primeira pergunta:
Sim, claro que é quase a definição, embora você tenha algum erro associado ao tamanho da amostra. isto é, exatamente correto em um tamanho infinito de amostra.
Segunda questão:
Isso se chama Teorema de Bayes , mas presumo que você já saiba disso. Agora, dadas as informações que você forneceu, obtenho a probabilidade de P (D | S) como 0,18 ou 18%:
Agora, infelizmente, eu não estou muito familiarizado com o R, então não posso realmente ajudá-lo com um programa exato. Mas certamente as quantidades de pessoas que se enquadram em cada grupo são bastante fáceis de calcular:
Para o seu conjunto de amostras 10000, você precisa:
O que deve tornar a geração de uma população adequada bastante trivial.
fonte