0
votes

Reshaping Data Cadre et compter les valeurs basées sur des critères

J'ai le jeu de données ci-dessous. J'essaie de déterminer le type de client en fournissant une étiquette. Mon Excel s'écrase en raison de trop de données lorsque je tente, essayez donc de compléter avec Python. XXX PRE>

dans Excel, je voudrais: P>

1. Create new columns "ProdA", "ProdB", "Type"
2. Remove duplicates for column "customer"
3. COUNTIF Customer = ProdA, COUNTIF customer = ProdB
4. IF(AND(ProdA = 1, ProdB = 1), "Both", "One")


customer ProdA ProdB Type
--------------------------
CustA    1     1     Both
CustB    1     1     Both
CustC    1     0     One
CustD    1     0     One


1 commentaires

Pouvez-vous poster une partie de l'ensemble de données?


3 Réponses :


2
votes

Méthode 1:

Nous pouvons atteindre cet article en utilisant pd.crosstab , puis à l'aide de la somme de proda et prodb à série.map 2 - > & 1 -> un : xxx

ou nous pouvons utiliser np.where dans le Last Line pour assigner conditionnellement ou un : xxx xxx


méthode 2

Nous pouvons également utiliser PD.CROSSTAB plus de plus avec le margins = true argument: xxx xxx


0 commentaires

2
votes

essayez d'utiliser set_index code>, instable code> et np.select code>: xxx pré>

sortie: P >

item      ProdA  ProdB  Type
customer                    
CustA         1      1  Both
CustB         1      1  Both
CustC         1      0   One
CustD         1      0   One


0 commentaires

0
votes

En plus des autres suggestions, vous pouvez sauter des pandas entièrement: xxx

qui, pour moi, imprime cette xxx


0 commentaires