calcul du nombre de jours entre les 2 colonnes de dates dans la trame de données
J'ai un bloc de données qui a deux colonnes de dates dans le format aaaa/mm/jj.
Je suis en train de calculer le nombre de jours entre ces deux dates pour chaque observation à l'intérieur de la trame de données (et de créer une nouvelle variable avec ce nombre de jours dans celui-ci).
Pour l'instant j'ai essayé d'utiliser la réponse donnée ici:
Calculer le nombre de jours ouvrés entre 2 dates dans les R
mais la modification du code afin qu'il calcule le nombre total de jours plutôt que de simplement le nombre de jours de la semaine. Cela vient avec l'erreur disant:
Error in del/by : non-numeric argument to binary operator
In addition: Warning message:
In Ops.factor(to, from) : - not meaningful for factors
J'ai aussi tenté d'utiliser ce code:
finish <- as.Date(survey$date, format="%yyyy/%mm/%dd")
start <- as.Date(survey$tx_start, format="%yyyy/%mm/%dd")
date_diff<-as.data.frame(finish-start)
avec le plan de l'aide "cbind" ou quelque chose d'équivalent à combiner les données d'image "jours" à mon bloc de données "enquête" qui a des données qu'il contient.
Bien que cela ne me donne pas toutes les erreurs, les observations au sein de la "arrivée" et "départ" les objets sont tous "NA_real_", et le date_diff bloc de données a donc toutes les observations mentionnées comme NA.
Si quelqu'un pouvait me diriger dans la bonne direction, ce serait super! Tous les autres question j'ai trouvé ne semble pas avoir affaire à des dates variables, mais que les dates individuelles, et l'application de ces techniques à des variables n'a pas été de travailler pour moi.
Merci d'avance
- Ce code fonctionne pour moi. Vous ne savez pas si il est adapté à votre exemple: d1 = '2012-07-26'; d2 = '1970-12-25'; dd1 = comme.Date(d1); dd2 = comme.Date(d2); dd1-dd2;
- Mon principal problème est de traiter avec les colonnes de dates bien. J'ai 2 colonnes de dates, pour qui je veux calculer le nombre de jours entre ces deux comme une troisième colonne. Votre code fonctionne, mais est-il un moyen de l'adapter afin qu'elle traite avec des colonnes de dates dans un bloc de données?
- Le référencement de d1 et d2 comme éléments de la matrice, par exemple. sondage$date devrait fonctionner.
Vous devez vous connecter pour publier un commentaire.
Sans voir vos données (vous pouvez utiliser la sortie de
dput(head(survey))
pour nous montrer) c'est un coup de feu dans l'obscurité:survey$date_diff<-as.numeric(survey$date_diff)
Vous pourriez trouver la différence entre deux dates dans les colonnes d'un bloc de données à l'aide de la fonction
difftime
comme suit:Vous devez utiliser le comme.Les formats de Date correctement.
Par exemple.
R les formats de date sont similaires pour *nix ceux.
Faire un
typeof(xd)
le montre comme un double ie. jours depuis 1970.
De Ronald exemple, si la date de formats différents (comme affiché ci-dessous) puis modifier la
format
paramètreenquête: