Cliquez ici jusqu'à hier
Vous deviendrez ingénieur dans 100 jours - Jour 59 - Programmation - À propos des algorithmes
Vous deviendrez ingénieur dans 100 jours --- Jour 53 --Git --À propos de Git
Vous deviendrez ingénieur dans 100 jours - Jour 42 --Cloud --À propos des services cloud
Vous deviendrez ingénieur dans 100 jours-24 jours-Python-Bases du langage Python 1
Vous deviendrez ingénieur dans 100 jours --Jour 18 --Javascript --Les bases de JavaScript 1
Vous deviendrez ingénieur dans 100 jours - Jour 14 --CSS --CSS Basics 1
Vous deviendrez ingénieur dans 100 jours - Jour 6 --HTML - Bases du HTML 1
En regardant dans le dictionnaire, cela semble être un "rapport à tous les phénomènes".
En programmation, ce calcul de probabilité est souvent utilisé.
De plus, les statistiques ainsi que la probabilité sont l'un des domaines à traiter. Si vous allez en tant que programmeur, sur les termes et les méthodes de calcul Je pense qu'il vaut mieux garder ça bas.
J'ai choisi les termes de probabilité que je veux supprimer.
le terme | Anglais | sens |
---|---|---|
probabilité | Probability | Pourcentage d'événements |
permutation | Permutation | Disposer les r morceaux dans une rangée dans l'ordre de prélever r morceaux de n morceaux différents. |
combinaison | Combination | Extraction de r parmi n différents |
Sol | Factorial | Le produit des nombres entiers d'un entier positif à 1 |
Indépendance | Les résultats les uns des autres ne s'affectent pas | |
Procès | L'acte d'essayer de trouver la probabilité | |
Essai répété | Une tentative de répéter la même action sans changer les conditions | |
Valeur attendue | Expected value | Valeur moyenne obtenue dans un essai |
un événement | Event | Ce qui se produit |
Événement produit | Des deux événements A et B, événements où A et B se produisent en même temps | |
Tous les évènements | Un résumé de toutes les conséquences | |
Événement racine | Atomic event | Événements qui ne peuvent pas être subdivisés davantage |
Événements supplémentaires | Evénements autres qu'un | |
Événement d'exclusion | Événements qui ne se produisent pas en même temps | |
Événement vide | Un événement qui n'existe pas | |
Ben figure | Un diagramme visuel des relations entre plusieurs ensembles et l'étendue des ensembles | |
Chances | odds | Valeur numérique indiquant la probabilité en théorie des probabilités |
Distribution de probabilité | probability distribution | Représente la probabilité de prendre chaque valeur pour une variable stochastique |
Variable probabiliste | random variable | Valeur attribuée à ce qui peut arriver |
Type discret(Variable probabiliste) | Discrete | とびとびの数になるVariable probabiliste |
Type continu(Variable probabiliste) | Continuous | 幾らでも細かく刻むことができるVariable probabiliste |
Python a une bibliothèque pour vous aider à faire des calculs de probabilité Vous pouvez calculer la probabilité relativement facilement.
Le «plancher» peut être calculé avec la méthode «factorielle» telle que la bibliothèque «math».
Puisque la méthode de calcul est le produit d'un certain entier positif par un entier de 1. Si c'est le 4e étage, ce sera «4 * 3 * 2 * 1 (4!)» Et ce sera «24».
import math
print(math.factorial(4))
print(math.factorial(10))
24 3628800
«Séquence séquentielle» est le nombre lorsque r éléments sont sélectionnés parmi n éléments différents et disposés en ligne ».
Vous pouvez énumérer en générant une séquence à partir d'une liste (tableau).
ʻIl est trouvé par permutations
dans la bibliothèque itertools`.
ʻItertools.permutations (valeur de la liste, nombre à choisir) `
Dans ce cas, la valeur renvoyée elle-même n'est pas une liste Si vous voulez voir les valeurs, vous devez les convertir en liste.
Ce qui suit est l'ordre lorsque 2 sur 3 sont sélectionnés et disposés.
import itertools
l = ['A', 'B', 'C']
p = itertools.permutations(l, 2)
print(list(p))
[('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C', 'A'), ('C', 'B')]
Si le nombre est petit, il peut être répertorié, mais si le nombre de colonnes est trop grand, il ne peut pas être affiché.
Si vous ne voulez trouver que le nombre total, vous pouvez utiliser math.factorial
.
La formule est «n! / (N --r)!», Donc le nombre total de séquences pour sélectionner «5» à partir de «7» est
n , r = 7 , 5
math.factorial(n) // math.factorial(n - r)
2520
Vous pouvez maintenant le trouver.
La «combinaison» est le nombre lors de la sélection de «r» à partir de «n» différents, et ne considère pas l'ordre comme l'ordre.
Vous pouvez énumérer en générant une séquence à partir d'une liste (tableau). «Il se trouve dans les« combinaisons »de la bibliothèque itertools».
ʻItertools.combinations (valeur de liste, nombre à choisir) `
L'énumération des combinaisons pour sélectionner 2 sur 5 est la suivante.
l = ['a', 'b', 'c', 'd','e']
c = itertools.combinations(l, 2)
print(list(c))
[('a', 'b'), ('a', 'c'), ('a', 'd'), ('a', 'e'), ('b', 'c'), ('b', 'd'), ('b', 'e'), ('c', 'd'), ('c', 'e'), ('d', 'e')]
Dans ce cas, il n'y a pas de duplication entre les éléments.
Faire une combinaison en tenant compte de la duplication d'éléments
Utilisez combinaisons_with_replacement
.
ʻItertools.combinations_with_replacement (valeur de la liste, nombre à choisir) `
l = ['a', 'b', 'c']
c = itertools.combinations_with_replacement(l, 2)
print(list(c))
[('a', 'a'), ('a', 'b'), ('a', 'c'), ('b', 'b'), ('b', 'c'), ('c', 'c')]
Si vous ne voulez trouver que le nombre total, vous pouvez utiliser math.factorial
.
La formule est «n! / (R! * (N --r)!)», Donc le nombre total de combinaisons pour sélectionner «3» à partir de «7» est Ce sera comme suit.
n , r = 7 , 3
math.factorial(n) // (math.factorial(n - r) * math.factorial(r))
35
Pour créer un «produit direct de plusieurs listes», utilisez le «produit» de la bibliothèque «itertools».
ʻItertools.product (valeur de liste, valeur de liste) `
l1 = ['a', 'b', 'c']
l2 = ['X', 'Y']
p = itertools.product(l1, l2)
print(list(p))
[('a', 'X'), ('a', 'Y'), ('b', 'X'), ('b', 'Y'), ('c', 'X'), ('c', 'Y')]
Si vous spécifiez le nombre de répétitions dans l'argument repeat
, l'objet itérable est utilisé à plusieurs reprises.
Vous pouvez générer un produit direct.
ʻItertools.product (valeur de la liste, répéter = nombre de fois) `
l1 = ['a', 'b', 'c']
p = itertools.product(l1, repeat=2)
print(list(p))
('a', 'a'), ('a', 'b'), ('a', 'c'), ('b', 'a'), ('b', 'b'), ('b', 'c'), ('c', 'a'), ('c', 'b'), ('c', 'c')]
Je vais aborder la probabilité, mais apprenons d'abord les termes. Demain, il s'agit de calculer les valeurs attendues.
37 jours avant de devenir ingénieur
HP d'Otsu py: http://www.otupy.net/
Youtube: https://www.youtube.com/channel/UCaT7xpeq8n1G_HcJKKSOXMw
Twitter: https://twitter.com/otupython