Я починаю балуватися з використанням glmnet
з LASSO регресією , де мій результат становить інтерес дихотомический. Я створив невеликий макетний кадр даних нижче:
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)
Стовпці (змінні) у наведеному вище наборі даних є такими:
age
(вік дитини в роках) - безперервнийgender
- двійкові (1 = чоловік; 0 = жінка)bmi_p
(ІМТ перцентил) - безперервнийm_edu
(рівень вищої освіти матері) - порядковий (0 = менше середньої школи; 1 = диплом середньої школи; 2 = ступінь бакалавра; 3 = ступінь бакалавра)p_edu
(рівень вищої освіти батька) - порядковий (такий же, як m_edu)f_color
(улюблений основний колір) - номінальний ("синій", "червоний" або "жовтий")asthma
(стан дитячої астми) - бінарний (1 = астма; 0 = відсутність астми)
Мета цього прикладу використовувати ласо , щоб створити модель прогнозування стану дитини астми зі списку 6 потенційних предикторів ( age
, gender
, bmi_p
, m_edu
, p_edu
, і f_color
). Очевидно, розмір вибірки тут є проблемою, але я сподіваюся отримати більше розуміння того, як поводитися з різними типами змінних (тобто безперервними, порядковими, номінальними та бінарними) в glmnet
рамках, коли результат є двійковим (1 = астма ; 0 = відсутність астми).
Як такий, чи бажає хто-небудь надати зразковий R
сценарій разом з поясненнями для цього прикладного зразка, використовуючи LASSO з вищезазначеними даними для прогнозування стану астми? Хоча я дуже основна, я знаю, що я, і, ймовірно, багато хто з резюме, дуже вдячна б за це!
glmnet
дії з двійковим результатом.
dput
з фактичного об'єкта R; не змушуйте читачів ставити глазур зверху, а не пекти торт !. Якщо ви генеруєте відповідний кадр даних у R, скажімоfoo
, відредагуйте у питанні вихідdput(foo)
.