différence pour les pandas

Un simple pandas question:

Est-il un drop_duplicates() de la fonctionnalité drop chaque ligne impliqués dans la reproduction?

Un équivalent question est la suivante: est-ce pandas ont une différence pour dataframes?

Par exemple:

In [5]: df1 = pd.DataFrame({'col1':[1,2,3], 'col2':[2,3,4]})

In [6]: df2 = pd.DataFrame({'col1':[4,2,5], 'col2':[6,3,5]})

In [7]: df1
Out[7]: 
   col1  col2
0     1     2
1     2     3
2     3     4

In [8]: df2
Out[8]: 
   col1  col2
0     4     6
1     2     3
2     5     5

alors peut-être quelque chose comme df2.set_diff(df1) produira ce:

   col1  col2
0     4     6
2     5     5

Cependant, je ne veux pas compter sur les indices car dans mon cas, je dois traiter avec dataframes qui ont des indices.

En passant, j'ai d'abord pensé à une extension de la drop_duplicates() méthode, mais maintenant je me rends compte que la seconde approche utilisant les propriétés de la théorie des ensembles serait beaucoup plus utile en général. Les deux approches pour résoudre mon problème actuel, cependant.

Merci!

  • oui, il est drop_duplicates méthode... voir la documentation pandas.pydata.org. Selon la façon dont les données sont structurées, vous devriez être en mesure de faire ensemble des opérations de trop. peut certainement remplacer des éléments dans l'image avec des éléments à partir d'une autre image. Pas sûr désinvolte si il est possible de vérifier l'unicité sur toutes les colonnes
  • Pouvez-vous montrer comment effectuer des opérations définies?
  • Pouvez-vous fournir un échantillon de données et dites-nous ce que vous essayez d'accomplir?
  • Assurez-vous. Je vais mettre à jour en quelques minutes.
  • s'il y a des doublons... qui dataframe a l'exacte ones. C'est à dire que vous voulez simplement pour trouver des pièces uniques ou avez-vous besoin de fusionner avec de la logique supplémentaire?
  • Si il n'y a pas de doublons, différence renvoie le premier dataframe (par exemple df2.set_diff(df1) renvoie df2)

InformationsquelleAutor Robert Smith | 2013-08-12