Estou começando a se envolver com o uso de glmnet
com LASSO Regressão onde meu desfecho de interesse é dicotômica. Criei um pequeno quadro de dados simulado abaixo:
age <- c(4, 8, 7, 12, 6, 9, 10, 14, 7)
gender <- c(1, 0, 1, 1, 1, 0, 1, 0, 0)
bmi_p <- c(0.86, 0.45, 0.99, 0.84, 0.85, 0.67, 0.91, 0.29, 0.88)
m_edu <- c(0, 1, 1, 2, 2, 3, 2, 0, 1)
p_edu <- c(0, 2, 2, 2, 2, 3, 2, 0, 0)
f_color <- c("blue", "blue", "yellow", "red", "red", "yellow", "yellow",
"red", "yellow")
asthma <- c(1, 1, 0, 1, 0, 0, 0, 1, 1)
# df is a data frame for further use!
df <- data.frame(age, gender, bmi_p, m_edu, p_edu, f_color, asthma)
As colunas (variáveis) no conjunto de dados acima são as seguintes:
age
(idade da criança em anos) - contínuagender
- binário (1 = masculino; 0 = feminino)bmi_p
(Percentil do IMC) - contínuom_edu
(maior nível de escolaridade da mãe) - ordinal (0 = menor que o ensino médio; 1 = diploma do ensino médio; 2 = diploma de bacharel; 3 = pós-bacharelado)p_edu
(maior nível de escolaridade do pai) - ordinal (o mesmo que m_edu)f_color
(cor primária favorita) - nominal ("azul", "vermelho" ou "amarelo")asthma
(status de asma infantil) - binário (1 = asma; 0 = sem asma)
O objetivo deste exemplo é fazer uso de laço para criar um modelo de predizer o estado de asma da criança a partir da lista de 6 variáveis preditoras potenciais ( age
, gender
, bmi_p
, m_edu
, p_edu
, e f_color
). Obviamente, o tamanho da amostra é um problema aqui, mas espero obter mais informações sobre como lidar com os diferentes tipos de variáveis (isto é, contínuo, ordinal, nominal e binário) dentro da glmnet
estrutura quando o resultado é binário (1 = asma ; 0 = sem asma).
Como tal, alguém estaria disposto a fornecer um exemplo de R
script juntamente com explicações para este exemplo simulado usando o LASSO com os dados acima para prever o status da asma? Embora muito básico, eu sei que eu, e provavelmente muitos outros no CV, apreciariam muito isso!
glmnet
ação com um resultado binário.
dput
de um real objeto R; não faça os leitores colocarem a cobertura por cima, assim como fazer um bolo! Se você gerar o quadro de dados apropriado em R, por exemplofoo
, edite para a pergunta a saída dedput(foo)
.