Alors j'ai un fichier de données qui ressemble à ceci:
Date Amount 2010-01-01 20 2010-01-02 70
3 Réponses :
Définit la colonne CODE> DATE CODE> En tant qu'index, effectuez une groupeby sur la colonne CODE> MONTRE CODE>, obtenez un booléen pour des lignes dans le Dataframe d'origine qui sont égaux au résultat de la GroupeBy et index avec loc code>:
La solution la plus simple sera fusionnée (jointure intérieure) votre sortie à la date et au montant de la table d'entrée et obtenez les colonnes requises EX:
pd.merge(df,df.groupby(df['Date']).agg({'Amount':'max'}).reset_index(),on=['Date','Amount'])
Alors, après avoir frappé ma tête autour de quelques postes (et ne pas vous déranger de regarder mon propre poste XD), j'ai rencontré la solution suivante qui fonctionne aussi bien: P>
Notez que les solutions données par Manish et Sammy fonctionnent parfaitement et entraînent également le même Dataframe. Bravo! P> df.sort_values (by = ['montant'], ascendant = false) .drop_duplicates (sous-ensemble = 'date'). Sort_values (par = [date ']) code> p>