Réponse aux questions: résoudre un problème de traitement des données en utilisant la fonction de déplacement de pandas

Appelez - moi frère. 2022-01-15 03:56:12 阅读数:193

ponse aux questions soudre probl

Bonjour tout le monde,C'est moi..

Cette série sera utilisée pour documenter les réponses aux questions et les réponses aux questions que vous rencontrez dans la vie quotidienne,.Ces questions peuvent venir de nos adorables fans ou de nous - mêmes.Le texte sera plus indirect,La solution n'est pas nécessairement optimale,Bienvenue à l'échange~

Commençons officiellement!

Aujourd'hui, un fan a demandéPandasDeTraitement des donnéesQuestions,Comme autrefois,Voyons voir!

Questions

df,Oui.name,jobDeux colonnes,
Critères de filtrage,job=0,Et cette lignenameEt la ligne précédente(Valeur précédente)C'est différent.
Mettez lesjobDe0Lire comme suit:1

Nous nous baserons sur nos propres idées,J'ai construit mes propres données analogiques directement!

In [1]: import pandas as pd
In [2]: df = pd.read_clipboard()
In [3]: df
Out[3]:
name job
0 Xiao Ming 1
1 Xiao Ming 0
2 Huazi. 0
3 PetitK 1
4 Mario 0
5 Les fleurs fleurissent 1
6 Les fleurs fleurissent 0
In [4]: df.loc[(df['name']==df['name'].shift())&(df['job']==0), 'job'] = 1
In [5]: df
Out[5]:
name job
0 Xiao Ming 1
1 Xiao Ming 1
2 Huazi. 0
3 PetitK 1
4 Mario 0
5 Les fleurs fleurissent 1
6 Les fleurs fleurissent 1

Parce que l'exigence est une valeur par rapport à la ligne précédente , Donc ce qui est utilisé ici est shiftFonctionnement, Par défaut, un bit vers le bas , On peut alors comparer directement , En combinaison avec l'autre attribut de valeur .Si les conditions sont remplies, Nous pouvons assigner les valeurs directement !

À propos de ce besoin,On peut encore passer par Pour traverser ou construire une fonction apply Et ainsi de suite. ,Il n'y aura pas de déploiement ici.,Les amis intéressés peuvent essayer par eux - mêmes!

 Ajouter un Code QR ami

版权声明:本文为[Appelez - moi frère.]所创,转载请带上原文链接,感谢。 https://pythonmana.com/2022/01/202201080611484621.html