Combinaisons Python Itertools

Combinaisons Python Itertools
Nous couvrons la fonction combinaisons () en utilisant les itertools. Cependant, il est crucial pour comprendre son utilisation avant de plonger plus loin dans le sujet. Jetons d'abord un coup d'œil. Nous ressentons fréquemment des combinaisons ou des permutations lors de la réalisation de différents calculs. Mais même si nous pouvons calculer des nombres, les traits de grandes valeurs seraient parfois difficiles. Pensez à ce qui pourrait se produire si nous avions des outils qui pourraient faire cette détermination pour les utilisateurs.

Package Itertools

Nos exigences sont remplies avec précision par le package Itertools. Sa portée s'étend au-delà de cela, cependant. Il propose des méthodes supplémentaires qui facilitent également les autres opérations prédéfinies. Mais ce package est classé en trois types, à savoir: les itérateurs infinis, les itérateurs de la combinatoire. et terminer les itérateurs.

Nous ne discuterons que la fonction combinaisons () parce que ce module est trop important pour décrire dans son intégralité à ce stade. Pendant la procédure, regardons comment le déployer, comment l'intégrer et voir ce que les combinaisons incluent.

Installation

Étant donné que cette approche est intégrée à Python, aucune procédure d'installation n'est nécessaire. Avant de l'utiliser, nous devons l'intégrer. La commande suivante pourrait être utilisée pour l'accomplir:

# Importer itertools

Définition des combinaisons

Lorsque nous pensons aux combinaisons, nous pouvons les définir comme une méthode pour organiser un groupe d'objets. L'ordre des composants en combinaisons est sans importance, donc «xy» fonctionne de manière similaire à «yx».

Combinaisons () méthode

La fonction particulière est un composant de la classification combinatoire du package Itertools. Ce groupe comprend les fonctions supplémentaires comme les produits () et les permutations (). La fonction Combinations (), en revanche, traite généralement de chaque combinaison qui pourrait être réalisable pour la collecte de données fournies.

Pour être plus précis, la méthode suggérée affiche chaque combinaison de données unique sans aucune substitution. Cependant, nous pouvons utiliser l'approche combinations_with_replacement () pour afficher chaque combinaison avec la substitution. Nous devons fournir les paramètres dans le bon ordre dans les deux situations. Maintenant, nous allons discuter de la façon d'utiliser la méthode combinaisons () dans Python.

Exemple 1:

En utilisant la méthode combinaisons (), nous démontrerons l'ensemble des combinaisons à deux mots qui sont disponibles avec la lettre «Informations» dans ce cas.

à partir des combinaisons d'importation Itertools
str = 'information'
a = len (str)
Imprimer (a)
combinaison = combinaisons (str, 2)
x = [".rejoindre (j) pour j en combinaison]
Imprimer (x)
imprimer (len (x))

Pour démarrer le code, nous intégrons le package «Combinaisons» à partir du cadre «Itertools». Maintenant, nous définissons le mot «information» et ce mot est stocké en variable «str». Nous appelons la méthode Len () pour trouver la longueur de la lettre spécifiée. Ensuite, nous imprimons la longueur de cette lettre. En utilisant le mot «information», nous devons obtenir toutes les combinaisons possibles. Donc, nous appliquons la fonction combinaison (). Nous choisissons le numéro «2» pour représenter le nombre total de valeurs dans l'ensemble. Nous appelons ensuite la fonction join () à l'étape suivante.

Parallèlement à cela, nous utilisons également la boucle «pour» pour obtenir toutes les combinaisons possibles du mot défini. Pour contenir les combinaisons possibles, nous devons définir une variable «x». Maintenant, la fonction print () est utilisée pour afficher ces combinaisons. Enfin, nous trouvons le nombre total de combinaisons avec l'aide de la méthode Len () et cette longueur est indiquée en utilisant la fonction print ().


Puisque nous n'avons pas trier les lettres dans l'instance précédente, la chaîne définie contient les lettres de manière lexicographique.

Exemple 2:

Nous observerons du résultat de l'instance précédente que les lettres n'ont pas été modifiées pendant l'arrangement. Nous avons également une option de configuration de remplacement. La technique combinaisons_with_replacement () nous permet d'accomplir cela. Voici une illustration:

à partir des combinaisons d'importation Itertools, combinaisons_with_replacement
w = 'badminton'
M = Len (W)
Imprimer (M)
combinaison = combinaisons_with_replacement (w, 3)
c = [".rejoindre (l) pour l en combinaison]
Imprimer (c)
imprimer (len (c))

Les bibliothèques «combinaisons» et «combinaisons avec remplacement» du cadre «itertools» doivent être incorporées avant de commencer à coder. Maintenant, nous spécifions le terme «badminton» qui est maintenu dans la variable «w."Pour déterminer la longueur du mot fourni, nous utilisons la fonction Len (). Ensuite, nous montrons combien de temps cette lettre était. Nous voulons juste identifier chaque combinaison réalisable en utilisant le mot «information».

Pour ce faire, nous appelons la combinaison de fonction avec remplacement (). Le nombre d'éléments que nous souhaitons inclure dans l'ensemble est spécifié comme «3».Nous utilisons la méthode join () à l'étape suivante. De plus, nous utilisons la boucle «pour» pour obtenir chaque combinaison possible du terme spécifié. Pour conserver les combinaisons possibles, un attribut appelé «C» doit être déclaré.

Maintenant, les combinaisons sont présentées en utilisant la méthode print (). Dans la dernière étape, nous utilisons la fonction Len () pour calculer le nombre total de combinaisons et la méthode print () est utilisée pour afficher cette longueur.

Exemple 3:

Nous devons probablement récupérer les combinaisons des Pandas Dataframes. La méthode lambda sera utilisée pour l'accomplir. Regardons le scénario suivant:

Importer des pandas en tant que PD
à partir des combinaisons d'importation Itertools
d_f = pd.DataFrame ('subj1' :( 'x', 'z'), 'subj2': ('i', 'j'), 'subj3': ('r', 's'), 'subj4': ( 'a', 'e'))
d_f ['combinaisons'] = d_f.Appliquer (Lambda V: liste (combinaisons (V, 2)), axe = 1)
imprimer (d_f)

Nous importons deux fichiers d'en-tête requis qui incluent «pandas» comme «PD» et «combinaisons» du module «itertools». Nous créons un ensemble de données en utilisant le dataframe (). Cette fonction est associée à la bibliothèque Pandas. Nous définissons les éléments de l'ensemble de données dans cette fonction.

À l'étape suivante, nous utilisons les méthodes de lambda et de combinaisons. La méthode lambda contient deux paramètres. Nous spécifions la valeur de l'axe ici. Pour stocker les combinaisons générées, nous insérons une colonne dans l'ensemble de données appelées combinaisons. Enfin, nous représentons l'ensemble de données requis à l'aide de la méthode print ().

Conclusion

Les techniques de combinaison du package Itertools sont discutées dans cet article. Les procédures de syntaxe, de configuration et d'importation dans le système sont toutes démontrées. Ensuite, nous avons examiné comment créer les combinaisons de lettres en utilisant les fonctions combinées et en utilisant les différents types de données, y compris les chaînes et les tableaux. Lors de l'utilisation de la méthode combinaisons (), nous utilisons le module DataFrame. Dans un cas, nous avons effectué les combinaisons avec des remplacements et dans un autre exemple, nous avons effectué les combinaisons sans remplacement.