0
votes

Ajout d'une colonne Pandas DF qui concaténa les valeurs correspondantes d'un autre DF

J'essaie de créer une nouvelle colonne dans un Dataframe Pandas qui concaté ces valeurs d'un autre Dataframe qui correspond à une certaine condition.

Si j'ai des stocks de données et des produits en tant qu'entrées: xxx

je veux que la sortie soit xxx

i J'ai essayé cela (et d'autres approches) mais obtenez une erreur clé. Je ne sais pas si c'est la meilleure approche ou s'il y a un meilleur moyen de s'attaquer à cela. xxx


0 commentaires

4 Réponses :


0
votes

quelque chose comme ça devrait le faire

Produits.groupby ('Catégorie'). Sku.apply (Lambda x: ';'. Joindre (Liste (Str (i) pour i dans la liste (x))))

 Entrez la description de l'image ici

Cependant, si j'étais vous, je voudrais utiliser une liste plutôt qu'une chaîne


0 commentaires

0
votes

Vous pouvez le faire en utilisant le groupe par comme ci-dessous xxx pré>

si vous souhaitez limiter le résultat à des catégories dans la table des données d'inventaire, vous pouvez utiliser la fusion comme ci-dessous P>

df_inventory.merge(df, on="Category")


1 commentaires

Vraiment utile pour apprendre sur Groupby! (Comme j'apprends Python, je trouve l'une des parties les plus difficiles à trouver ce qui a déjà été transformé en fonctions existantes).



0
votes

Une solution plus simple pour comprendre quelqu'un comme moi qui ne reçoit pas Lambda et d'autres solutions de ligne cool 1 ligne. xxx

(Je les ai stockés comme liste plutôt que ";" chaîne séparée.)


2 commentaires

C'est vraiment utile! Certainement, la façon dont je pense à la programmation pour le moment. Mais aussi essayer d'apprendre la façon "pythononique" de faire des choses


Oui. Je suppose que la raison pour laquelle je tiens à ce style est que j'ai commencé à programmer par C ++. Bonne chance avec votre voyage d'apprentissage.



0
votes

Vous pouvez utiliser groupby.apply code> + série.map code> : xxx pré>


  Category         All_SKU
0    Apple  4123,4356,4896
1   Banana            7895
2  Oranges       5897,5324


0 commentaires