Comment faire pour regrouper plusieurs colonnes dans les pandas groupby
J'ai créé une pandas dataframe mn à l'aide d'entrée suivants:
keyA state n1 n2 d1 d2
key1 CA 100 1000 1 2
key2 FL 200 2000 2 4
key1 CA 300 3000 3 6
key1 AL 400 4000 4 8
key2 FL 500 5000 5 2
key1 NY 600 6000 6 4
key2 CA 700 7000 7 6
Ont créé une somme de l'objet comme suit :
s = mn.groupby(['keyA','state'], as_index=False).sum()
Comment puis-je effectuer une itération de la somme objet s
, afin que je puisse obtenir la sortie suivante:
La v1 colonne dans le résultat ci-dessous est calculé comme s['n1']/s['d1']
La v2 de la colonne dans le résultat ci-dessous est calculé comme s['n2']/s['d2']
keyA state v1 v2
'key1','AL',100,500
'key1','CA',100,500
'key1','NY',100,1500
'key2','CA',100,1166
'key2','FL',100,1166
OriginalL'auteur user3376169 | 2014-03-07
Vous devez vous connecter pour publier un commentaire.
Assez bien l'écrire comme votre pseudo.
Je pense que vous avez une faute de frappe dans votre exemple de données par la voie. La deuxième
n1
l'en-tête doit êtren2
.OriginalL'auteur TomAugspurger