Pour développer un peu la réponse de @ ken-butler. En ajoutant à la fois la variable continue (heures) et une variable indicatrice pour une valeur spéciale (heures = 0, ou non allaitement), vous pensez qu'il y a un effet linéaire pour la valeur "non spéciale" et un saut discret dans le résultat prévu à la valeur spéciale. Cela aide (du moins pour moi) à regarder un graphique. Dans l'exemple ci-dessous, nous modélisons le salaire horaire en fonction des heures hebdomadaires de travail des enquêtées (toutes les femmes), et nous pensons qu'il y a quelque chose de spécial à propos des «heures normales» de 40 heures par semaine:
Le code qui a produit ce graphique (dans Stata) peut être trouvé ici: http://www.stata.com/statalist/archive/2013-03/msg00088.html
Dans ce cas, nous avons donc attribué à la variable continue une valeur 40, même si nous voulions qu'elle soit traitée différemment des autres valeurs. De même, vous donneriez à vos semaines d'allaitement la valeur 0 même si vous pensez qu'elle est qualitativement différente des autres valeurs. J'interprète votre commentaire ci-dessous que vous pensez que c'est un problème. Ce n'est pas le cas et vous n'avez pas besoin d'ajouter un terme d'interaction. En fait, ce terme d'interaction sera abandonné en raison de la colinéarité parfaite si vous avez essayé. Ce n'est pas une limitation, cela vous indique simplement que les termes d'interaction n'ajoutent aucune nouvelle information.
Supposons que votre équation de régression ressemble à ceci:
y^=β1weeks_breastfeeding+β2non_breastfeeding+⋯
Où est le nombre de semaines d'allaitement (y compris la valeur 0 pour celles qui n'allaitent pas) et n o n _ b r e a s t f e e d i n g est une variable indicatrice qui est 1 lorsque quelqu'un n'allaite pas et 0 sinon.weeks_breastfeedingnon_breastfeeding
Considérez ce qui se passe lorsque quelqu'un allaite. L'équation de régression se simplifie pour:
y^=β1weeks_breastfeeding+β20+⋯=β1weeks_breastfeeding+⋯
Donc n'est qu'un effet linéaire du nombre de semaines d'allaitement pour celles qui allaitent.β1
Considérez ce qui se passe lorsque quelqu'un n'allaite pas:
y^=β10+β21+⋯=β2+⋯
β2
Vous pouvez voir qu'il est inutile d'ajouter un terme d'interaction, car ce terme d'interaction est déjà (implicitement) là-dedans.
β2weeks_breastfeedingweeks_breastfeedingβ2
Quelque chose de simple: représentez votre variable par un indicateur 1/0 pour tout / aucun et la valeur réelle. Mettez les deux dans la régression.
la source
Si vous mettez un indicateur binaire pour n'importe quel temps passé (= 1) vs aucun temps passé (= 0) et que vous avez ensuite le temps passé en tant que variable continue, l'effet différent de "0" fois sera " ramassé "par l'indicateur 0-1
la source
Vous pouvez utiliser des modèles à effets mixtes avec un regroupement basé sur un temps 0 par rapport à un temps différent de zéro et conserver votre variable indépendante
la source
Si vous utilisez Random Forest ou Neural Network, mettre ce nombre à 0 est OK, car ils pourront comprendre que 0 est distinctement différent des autres valeurs (s'il est en fait différent). L'autre solution consiste à ajouter une variable catégorielle oui / non en plus de la variable temporelle.
Mais dans l'ensemble, dans ce cas particulier, je ne vois pas de vrai problème - 0,1 semaine d'allaitement est proche de 0 et l'effet sera très similaire, donc cela ressemble à une variable assez continue pour moi avec 0 ne se démarquant pas comme quelque chose distinct.
la source
Le modèle Tobit est ce que vous voulez, je pense.
la source