Vous pouvez souvent trouver des exemples d'obtention des valeurs moyennes, minimales et maximales de nombres avec des pandas. J'ai souvent créé des groupes et les ai traités, alors j'ai plutôt résumé mon mémorandum. ~~ J'ai l'impression que je vais rester coincé dans le nombre de décoctions ... ~~
J'utilise Jupyter Notebook pour vérifier le fonctionnement.
Les données utilisées sont les données d'événements indésirables de JADER.
import pandas as pd
import numpy as np
reacs=pd.read_csv('reac.csv',dtype='str',encoding='shift-jisx0213')
Tout d'abord, regroupez par ** numéro d'identification ** pour que chaque cas soit unique
groupCaseNo=reacs.groupby('Numéro d'identification')
Puisqu'il est groupé par numéro d'identification, vous pouvez obtenir les clés groupées en utilisant groupes
comme indiqué ci-dessous.
groupCaseNo.groups.keys()
Le traitement peut être effectué pour chaque clé en procédant comme suit.
Le contenu de get_group
peut être obtenu en utilisant la clé de regroupement.
for case in groupCaseNo.groups.keys():
print(groupCaseNo.get_group(case))
Il est possible de combiner des chaînes en utilisant une fonction en utilisant ʻapply` comme indiqué ci-dessous. Les fonctions anonymes sont possibles en utilisant lambda, mais je pense que vous devrez créer une fonction distincte lorsque vous faites des choses compliquées.
def getRecordAe(data):
return data.Numéro de série de l'événement dangereux+':'+data.Événement indésirable
groupCaseNo.apply(getRecordAe)
Recommended Posts