2017-08-10 1 views
-2

J'ai un ensemble de données d'achat qui ressemble à ce qui suit:Comment puis-je compter le temps entre les achats pour différents utilisateurs, en utilisant des pandas?

Date de l'utilisateur
user_a DATE_1
Utilisateur_b Date_2
user_a date_3
user_a date_4
date_5 utilisateur_c
Utilisateur_b date_6
utilisateur_c date_7
etc.

Je voudrais trouver le temps moyen entre les achats pour chaque utilisateur.

Une aide? J'utilise un ordinateur portable jupyter.

+0

(max (date) - min (date))/# achats, pour chaque utilisateur – Bokje

+0

Bienvenue dans StackOverflow. Veuillez lire et suivre les consignes de publication dans la documentation d'aide. [sur le sujet] (http://stackoverflow.com/help/on-topic) et [comment demander] (http://stackoverflow.com/help/how-to-ask) s'appliquent ici. StackOverflow n'est pas un service de conception, de codage, de recherche ou de tutorat. – Prune

+0

tout code que vous avez essayé? –

Répondre

1

En supposant que vos données sont des données avec 'User' en tant que colonne et 'date' une autre colonne.

df.groupby('User').mean() 

si cela n'a pas fonctionné à cause du format de la date (chaîne), vous pourriez avoir à modifier le format de date à l'aide

pd.to_datetime

ou convertir date jours

+0

J'ai essayé cela. le format de date est maintenant: "non-null datetime64 [ns]". Mais je reçois toujours: DataError: Aucun type numérique à agréger – gereige

+0

Quel est votre format de date? Est-il dd: mm: aaaa: hh: mm: ss ou juste mm: dd: yyy? Il est préférable de convertir en jours avec une année de référence –