GithubHelp home page GithubHelp logo

bd4d-sc / intro-python Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wikistat/intro-python

0.0 1.0 0.0 1.32 MB

Python pour Statistique et Science des Données -- Syntaxe, Trafic de Données, Graphes, Programmation, Apprentissage

License: MIT License

Jupyter Notebook 100.00%

intro-python's Introduction

L'objectif de ces tutoriels, proposés sous forme de calepins (jupyter notebooks), est d'introduire les principaux concepts et fonctionnalités du langage Python en insistant sur ceux indispensable au statisticien, maintenant data scientist. Syntaxe, objets et classes, fonctions graphiques, techniques de préparation (munging ou wrangling) des données, éventuellement massives (big data), puis leur analyse (big data analytics) en enchaînant phases d'exploration et de modélisation ou apprentissage (machine / statistique). Des exemples plus détaillés sur des données spécifiques (en R et en python) sont proposés sur wikistat.fr ainsi que dans les autres dépôts de ce site. Les méthodes sont exposées dans les vignettes de wikistat.

Les documents sont des calepins (notebooks) au format .ipynb à télécharger et ouvrir dans Jupyter. Il suffit pour cela de cloner le dépôt dans son propre environnement GitHub ou de télécharger l'archive zippée.

Tutoriels d'initiation à Python

Pourquoi Python

Le langage Python est développé et diffusé par la Python Software Foundation selon une licence GPL-compatible. À partir d'applications initialement de calcul scientifique (image, signal...), son utilisation s'est généralisée dans de nombreux domaines et notamment pour l'analyse statistique de données pouvant être volumineuses. Il est donc "libre", efficace en calcul numérique (librairie NumPy), orienté objet, propose de la programmation fonctionnelle... et bénéficie d'une communauté très active qui développe de nombreuses applications et librairies.

L'objectif de ce tutoriel est d'introduire le langage Python3 et quelques librairies pour préparer puis commencer à analyser des données. Lorsque celles-ci sont trop volumineuses pour la taille du disque et distribuées sur les n\oe uds d'un cluster sous Hadoop c'est encore le langage Python (API PySpark) qui permet de passer à l'échelle en utilisant la technologie Spark et éventuellement la librairie MLlib.

De façon plus précise, Python et la librairie pandas offrent des outils efficaces, comme le découpage automatique en morceaux (chunks) adaptés à la taille de la mémoire vive ou encore l'accès à des données au format binaire HDF5 (librairie Pytable), pour lire (format .csv ou fixe), gérer, pré-traiter, trafiquer (en jargon : data munging ou wrangling), visualiser des données volumineuses. Néanmoins, la parallélisation des traitements pour des très volumineuses ou en flux donc distribuées sera sans doute plus efficace avec la technologie adaptée Spark.

La version 3.6. de Python est celle actuellement la "plus récente". Le passage à la version 3 introduisit une rupture de compatibilité par rapport à la version 2 qui est toujours en développement (2.7). Il peut rester nécessaire de pouvoir exécuter les deux versions selon les librairies utilisées et applications recherchées. La version 2.7 inclut des ajouts permettant des éléments de "rétro"-compatibilité avec la version 3. Pour l'usage rudimentaire de ces tutoriels, il semble que les deux versions soient compatibles; c'est la version 3.6 qui est utilisée.

intro-python's People

Contributors

bguillouet avatar joshaber avatar philbesse avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.