Ching, vous n'avez pas besoin de rendre votre ensemble de données équilibré en termes de 1 et de 0. Tout ce dont vous avez besoin est un nombre suffisant de 1 pour la probabilité maximale de convergence. En regardant la distribution des 1 (100 000) dans votre jeu de données, vous ne devriez avoir aucun problème. Vous pouvez faire une expérience simple ici
- Échantillonnez 10% des 1 et 10% des 0 et utilisez un poids de 10 pour les deux
- Échantillonnez 100% des 1 et 10% des 0 et utilisez un poids de 10 pour les 0
Dans les deux cas, vous obtiendrez des estimations identiques. Encore une fois, l'idée de pondération est liée à l'échantillonnage. Si vous utilisez l'ensemble de données, vous ne devez pas le pondérer. Si j'étais vous, je n'utiliserais que 10% si 1 et 10% de 0.
Dans R, vous utiliseriez glm
. Voici un exemple de code:
glm(y ~ x1 + x2, weights = wt, data =data, family = binomial("logit"))
Dans votre jeu de données, il devrait y avoir une variable wt
pour les poids.
Si vous utilisez 10% des 0 et des 1, votre wt
variable aura une valeur de 10.
Si vous utilisez 10% des 0 et 100% des 1: la wt
variable aura une valeur de 10 pour les observations avec y = 0 et de 1 pour les observations avec y = 1