JulienHeiduk / python-data-science

Produire, prédire et décider grâce aux solveurs Python et Excel, au Machine Learning et aux lois de probabilité mathématiques

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fichiers Excel et python de recherche opérationnelle ( Optimisations linéaires et non linéaires)

Scripts de Data sciences, probabilités et machine learning en Python

CAS D'UTILISATIONS . Screenshot

Français/French

Introduction

Je stocke ici divers scripts de data science et de mathématiques descriptives ou prédictives en Python, en langue Française. Mes études sont principalement axées sur les solveurs linéaires, les régressions multiples, les lois de probabilité et les chaines de Markov. Un peu de finances aussi...

New 2022 : Je vais dorénavant stocker des centaines de fichiers de recherche opérationnelle avec le solveur EXCEL , c'est donc désormais du Prescriptif (Optimisation linéaire et non linéaires mathématique), que je traduis en Français, je leur crée des légendes simplifiées et les valide( Produits mixs, Produits mix non linéaires, Mélanges, Production multi périodes avec gestion des stocks, Job Shop sur multiples machines, Cutting stock, Bin Packing 2d et bien plus etc ... Je crée aussi le code en python correspondant afin de vérifier que les résultats collent entre eux ! je ne fais plus que ça ....

New 2022: I will now store hundreds of operational research files with the EXCEL solver, so it is now Prescriptive (Linear and nonlinear mathematical optimization ), which I translate into French, I create simplified legends for them and validate them (mixed products, non-linear mixed products, mixtures, multi-period production with inventory management, Job Shop on multiple machines, Cutting stock, Bin Packing 2d and many more etc. I will create the corresponding Python solver code too ... I just do that....

Important : Il faut savoir que les valeurs dans les fichiers Excel pourraient provenir de bases de données et non pas être des valeurs 'statiques' , et donc se modifier en temps réel, et pas seulement être statiques, ce qui procure une puissance incroyable au Solveur Excel. Je tente également de comparer les résultats en python à ceux en Excel dès que c'est possible, pour l'instant, c'est assez largement OK, et les solveurs trouvent les mêmes résultats (Solveur Excel = Solveur Python).

N'hésitez pas à consulter mon application commerciale , www.solvgraph.com ,alt text pour comprendre plus facilement ce qu'est la Recherche opérationnelle, en mode graphique, ainsi que son grand intérêt pour les entreprises.

Do not hesitate to consult my commercial application, www.solvgraph.com, to understand more easily what Operational Research is, in graphic mode, as well as its great interest for companies.

Dernières news du dépot :

22/01/2023 : Restructuration et correction des lois de probabilités, en particulier Poisson et passages en fichier notebooks directement visualisable dans github, J'utilise prioritairement les fonctions SCIPY désormais (poisson.cdf, uniform.cdf , expon.cdf etc...). Le bon lien : https://www.w3schools.com/python/numpy/numpy_random_exponential.asp

26/10/2022 : J'avance désormais sur les optimisations non linéaires sous Excel et le Solveur Gekko Python
I'm now starting to tackle lots of non linear optimizations using the Excel Solver and the Gekko Solver ! :

Lien optimisation en français non lin

26/09/2022 : Réduction drastique du nombre de répertoires ! Les optimisations avec le solveur Excel sont encore en cours de tri mais à la fin , ca va être très bien , et je crée les fichiers en python équivalents dès que je peux et les place dans le même répertoire... Pour le machine learning, j'ai pleins de nouveaux livres ( Surtout du O'reilly) et j'en fait 35% du temps par rapport à la Recherche opérationnelle.

22-09-2022 : Passage définitif en fichiers ipynb, Notebook python pour plus de simplicité pour les optimisations en Python Pulp et Gekko. On peut voir directement les fichiers fonctionner dans Github, c'est beaucoup plus ludique.

15-09-2022 : Création du nouveau répertoire 33 recherche opérationnelle , trié par catégories d'optimisations , ou il y aura dans chaque cas le code Excel, Pulp et Gekko. Ce sera beaucoup plus simple ! Les catégories sont tirées des livres référence d'optimisation Excel et aussi d'Internet, comme ça, c'est standardisé.

27-07-2022 : Très important, découverte de 2 livres majeurs de référence en anglais, abordant tous les thèmes et modèles mathématiques , au moins 800 pages:

  • B W Taylor - Introduction to management science - Pearson
  • Wyane Winston - Practical Management science - winston Albright

J'aurais préféré les trouver tout de suite.

Pour les exercices :

  • Step by step optimization with excel solver - Mark Hamon mba
  • optimizations modeling with spreadsheets - Wiley

Pour les statistiques (descriptif):

  • Aide mémoire Statistiques et probabilités - Dunod 2 ème édition
  • Premiers pas en statistiques de Pearson

Cours Coursera - Université Taïwan - Operation research : https://lnkd.in/e_UhSs-k

Udemy - Solveur Excel - optimisations linéaires et non linéaires : https://lnkd.in/e2y8AGJS

Le cours Pyomo est vraiment spécifique et mathématique,voir mécanique, mais très bien ( Optimisation d'objet dans un container cylindrique etc ...) https://lnkd.in/ekZeQmpx

10-06-2022 : Découverte d'une librairie dédiées aux problèmes à objectifs multiples : https://pymoo.org/getting_started

10-06-2022 : Répertoire 11 / 03. Production planifiée - Comparaison Excel/Python Pulp : Le fichier excel et python ne donnent pas le même résultat objectif - mais les mêmes ordonnances de planification de production par mois. La raison est que le calcul de la fonction objectif utilise une valeur de stock moyen ' average ' dans Excel, mais le script Python ( Qui est exact) , lui, ne calcule pas le résultat de l'objectif ( Minimiser le cout ) en utilisant cette valeur de stock moyen (average inventory), qui est optionnelle.

23-05-2022 : Découverte de l'excellente page wikipedia traitant de l'ordonnancement d'atelier, très très claire ! (Job shop, flow shop): https://fr.wikipedia.org/wiki/Ordonnancement_d%27atelier

23-05-2022 : Découverte du magnifique site du cours B6015: Decision Models de Columbia university, avec des tas d'exemples du solveur excel opérationnels et de la finance ( En particulier, l'allocation de fonds) ! https://www.meiss.com/columbia/en/teaching/2000/fall/B6015/#Download

23-05-2022 : Ajout dans le rep 11 des scripts python pulp de planification de production multi période + Comparaison avec le solveur Excel = Python Pulp et le Solveur Excel trouvent exactement le même résultat ! 05-23-2022: Addition in rep 11 of the python pulp scripts for multi-period production planning + Comparison with the Excel solver = Python Pulp and the Excel Solver find exactly the same result!

20-05-2022 : 2 excellents cours de R.O en Anglais, j'hallucine devant la qualité et précision du cours dispensé : Cours Coursera - Université Taïwan - Operation research :
https://www.coursera.org/learn/operations-research-modeling?action=enroll

Cours Udemy - Solveur Excel - optimisations linéaires et non linéaires :
https://www.udemy.com/course/optimization-with-excel-operations-research-without-coding/

20-05-2022 : Ajout du répertoire 28 , pour les scripts du solveur non linéaire GEKKO

12-04-2022 : Restructuration du répertoire 11 Solveurs linéaire + ajout de codes Product mixes incluant affichage des ressources inutilisées et shadow price en python pulp

27-04-2022 : Découverte du superbe site http://mba.tuck.dartmouth.edu/opt/index.html du super livre "Optimization Modeling with Spreadsheets" - Présence et explication d'un modèle de Job Shop avec disjonctions + Ficher excel ! Ce livre fait partie de mes 4 livres d'optimisation linéaire avec Excel en Anglais que j'étudie désormais, Microsoft Excel 2013 Data Analysis and Business Modeling , et Step-By-Step_Optimization_S et Wayne_L._Winston_S._Christian_Albright_Practical_Management_Science

25-04-2022 : Découverte du programme Lekin 2010 pour gérer les optimisations linéaires Job Shops / Flow Shop

  • 08-04-2022 : 26. Recherche opérationnelle en Excel - > Je prends chaque problème linéaire EXCEL , valide les résultats, puis les traduits ( Quand ce ne sont pas ceux de Christian Prins et Marc Sevaux) et ajoute des légendes. A terme, j'aurais chaque catégories de programmes linéaires parfaitement triés et susceptibles d'êtres modifiés en fonction des besoins.

  • 06-04-2022 : Les fichiers 'MULTIPLES' du répertoire 'Recherche opérationnelle avec Excel' sont fantastiques avec optimisation d'affectation sur une semaine par exemple -> création de légendes et traductions.. C'est précisément ça qui est très difficile à coder en full stack (Python + Js) dans www.solvgraph.com, pourtant, en toute logique, ça doit être possible à l'avenir, mais très difficile. L'objectif est de parvenir à programmer les 'objectifs multiples' et les 'groupes de variables de décisions' en python ( et aussi dans Excel)

  • 30-04-2021 : Ajout du répertoire de la théorie des files d'attente. Découverte du site de cours de mathématiques de université Lille L1 L2 et L3 : http://exo7.emath.fr/index.html

  • 19-02-2021 : Création du chapitre "19. Notebooks de Data Science Kaggle, traduits en Français" , avec des stats simples, mais aussi, du Keras et du Tensorflow (Machine Learning), pour l'analyse de photos ( Exemple : détection de cancers)...

  • 10-02-2021 - J'ai désormais une tablette avec des tas de livres, et j'en prends 2 ou 3 à étudier seulement(Toujours les mêmes) et retranscrit des formules en python dans ce dépot GITHUB dès que possible, triées par chapitres. Cette année c'est :

Introduction to machine learning de Andreas Muller ...chez O'reilly en Anglais : Super bien écrit et facile à comprendre.

Dunod - Mini manuel de mathématiques financières: Il contient d'excellentes bases .( Je retranscrit les formules de Maths du livre en python dans mon chapitre 5)

Mastering Python for Finance by James Ma Weiming : Livre En anglais, bien écrit et assez difficile, avec les scripts de la frontière efficace (efficiente), du Python Pulp, etc ..

--> Mon objectif est d'utiliser dans des apps concrêtes les formules de Finances en gestion de Portfolios(Portefeuille), Les probabilités en chaines de Markov et les solveurs linéaires en programmation linéaire ( Pour mon app : http://solvgraph.com)

Notebooks de Data Science à télécharger sur Kaggle (En Anglais)!

https://www.kaggle.com/notebooks

ting

Modifier les notebooks Python avec Anaconda et Jupiter :

Screenshot
Ensuite, cliquer sur " Home " , "Jupiter Notebooks", et ouvrir ou créer un notebook...

Pourquoi créer des notebooks Python n'est il pas suffisant ?

Parce qu'il faut aussi savoir créer des apps réelles en Full stack, puis tenter un business model quelconque , pour la vendre. Il faut donc également savoir programmer en Full Stack ( y compris du JS), en plus de faire de la Data science. Voilà pourquoi j'ai aussi des fichiers .py que je peux placer sur un serveur Flask, sur Heroku par exemple.

Références (Livres)

Maths :

  • "Mathématiques L1 L2 - 30 fiches" Dunod
  • "Aide mémoire , Statistiques et probabilités pour l'ingénieur " Dunod
  • "Mathématiques pour l'informatique" ( Version bts sio, plus courte que la version compléte ) de Dunod
  • "Outils mathématiques pour l'informaticien, mathématiques discretes" De Boaeck
  • "Programmation linéaire avec Excel" https://www.eyrolles.com/Informatique/Livre/programmation-lineaire-avec-excel-9782212126594/
  • Livres de Maths de révision de lycées ( 2nd, Séries L, éco, S et Stg et quelques uns de collège 3 ème).
  • "Mathématiques appliquées à la gestion" Pearson education ( + difficile)
  • https://www.cmath.fr/

Général :

  • " Visa pour la prépa " de DUNOD

Statistiques :

Finances:

  • "Mastering Python for Finance" by James Ma Weiming
  • "Mini manuel de mathématiques financières" - Dunod

Data science et ML :

  • " Big Data et Machine Learning, Manuel du Data scientist " Dunod
  • " Apprendre le ML en 2 semaines" de la chaine youtube Machine Learnia
  • " Data science for dummies" : La data science pour les nuls, en anglais.
  • " Introduction to machine learning with python" O reilly , en anglais

BI :

  • " Talend for Big Data" Packt

Projets :

  • "Logistique" de Dunod , Yves Pimor"
  • Lean : " Toyota Supply Chain Management A Strategic Approach to Toyotas Renowned System" by Ananth Iyer, Sridhar Seshadri, Roy Vasher
  • "Gestion de projet pour les nuls"
  • " La méthode Prince 2"

Divers :

  • "Maxi fiches Physique , 2 ème édition - Mécanique , Thermodynamique, Electricité, ondes , optique pour L1 et L 2 " Dunod
  • " L'électronique de Poche pour les nuls"
  • " La comptabilité pour les nuls"

--> Professeurs, Phd doctorants, et liens en Français :

Infos :

Les scripts possédant la lettre C au début de leur noms ont un statut confirmé.
Les scripts possédant l'attribut BASE au début de leurs noms sont les plus simples et fiables.
Les scripts possédant la lettre KO au début de leurs noms ont un statut à vérifier ou en défaut.
(Note : Confirmé, veut dire résultat bon, confirmé par comparaison, cependant, la méthode/stratégie pour obtenir le resultat n'est pas forcément encore la meilleure, les fonctions peuvent parfois être très laides.)

Librairies utilisées

Les Chaines Youtube Françaises:

Data science, Machine Learning :
Machine Learnia https://www.youtube.com/channel/UCmpptkXu8iIFe6kfDK5o7VQ
Nicolas Br https://www.youtube.com/channel/UCzsU0h6kxkSSCqpXTRUHubg
Science4All : https://www.youtube.com/watch?v=Jf40Xd52NyQ

Maths :
Clipedia : https://www.youtube.com/channel/UCNwWU1hqK3q-DclufllWCfg
ProMath : https://www.youtube.com/channel/UC2flwAftkypBx2gLIamxwqg
J'ai compris Maths : https://www.youtube.com/channel/UCo-O74A4qVz6nq5cfCIee6w
Yvan Monka : https://www.youtube.com/user/YMONKA
Saïd Chermak : https://www.youtube.com/channel/UCppNXkk1sgDguxe8fQK9tng

Excellente chaine d'optimisation en Anglais ( explications très simples et structurées) :
https://www.youtube.com/channel/UC1S4Jeodbr5EbsCOIgBWJPQ
Example : Les contraintes binaires en optimisation : https://www.youtube.com/watch?v=B3biWsBLeCw

Liens et références (Suite)
A regarder également le super dépot Columbia-Intro-Data-Science avec tout le travail d'étudiants de Columbia dans ce domaine avec Python.

https://github.com/Columbia-Intro-Data-Science

Les cours sont ici :
https://github.com/Columbia-Intro-Data-Science/APMAE4990-/tree/master/notebooks

Un autre dépot sympa :
https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers

Ecoles :

  1. S'inscrire à l'université de Brest : http://formations.univ-brest.fr/fr/index.html
  2. S'inscrire à l'université de Rennes : https://formations.univ-rennes1.fr/master-1-data-science
  3. S'inscrire à l'EICNAM : http://ecole-ingenieur.cnam.fr/hors-temps-de-travail/inscription-a-l-eicnam/
  4. S'inscrire à l'ENSAE : https://www.ensae.fr/auditeurs-libres/
  5. S'inscrire à L'université de Bordeaux : http://www.math.u-bordeaux.fr/~mchave100p/teaching/ https://www.math.u-bordeaux.fr/imb/spip.php

  6. S'inscrire au D.U de Statistiques à Toulouse : https://www.ut-capitole.fr/formations/se-former-autrement/formation-ouverte-et-a-distance/diplome-universitaire-statistique-appliquee-formation-a-distance--326811.kjsp?RH=1319186952079

Moocs :

Coursera

Tous les cours de programmation linéaire :

Moocs de Maths:

Moocs de sciences Physique :

Collabs :

Vous désirez collaborer avec moi (Surtout sur les solveurs linéaires ( Monde agricole, productions alimentaires, production et j'espère... finance)) ... Ok ! envoyez moi un message


English

Just Some ordered python regressions, various maths and linear solvers studies scripts...

Books

Data science for dummies :

Info

Files with the C letter at the start of their names have confirmed status.
Files with the KO letters at the beginning of their names have a result to check or fail.

About

Produire, prédire et décider grâce aux solveurs Python et Excel, au Machine Learning et aux lois de probabilité mathématiques


Languages

Language:Jupyter Notebook 88.3%Language:Python 9.5%Language:HTML 2.1%Language:JavaScript 0.1%Language:CSS 0.0%Language:Batchfile 0.0%Language:PHP 0.0%Language:Shell 0.0%