python_reference/README.md
2014-09-26 18:07:47 -04:00

11 KiB
Raw Blame History


###// Python tips and tutorials [back to top]

  • A collection of not so obvious Python stuff you should know! [IPython nb]

  • Python's scope resolution for variable names and the LEGB rule [IPython nb]

  • Key differences between Python 2.x and Python 3.x [IPython nb]

  • A thorough guide to SQLite database operations in Python [Markdown]

  • Unit testing in Python - Why we want to make it a habit [Markdown]

  • Installing Scientific Packages for Python3 on MacOS 10.9 Mavericks [Markdown]

  • Sorting CSV files using the Python csv module [IPython nb]

  • Using Cython with and without IPython magic [IPython nb]

  • Parallel processing via the multiprocessing module [IPython nb]

  • Entry point: Data - using sci-packages to prepare data for Machine Learning tasks and other data analyses [IPython nb]

  • Awesome things that you can do in IPython Notebooks (in progress) [IPython nb]

  • A collection of useful regular expressions [IPython nb]

  • Quick guide for dealing with missing numbers in NumPy [IPython nb]

  • A random collection of useful Python snippets [IPython nb]


###// Python and the web [back to top]

  • Creating internal links in IPython Notebooks and Markdown docs [IPython nb]

  • Converting Markdown to HTML and adding Python syntax highlighting [Markdown]


###// Algorithms [[back to top](#a-collection-of-useful-scripts-tutorials-and-other-python-related-things)]

The algorithms category has been moved to a separate GitHub repository rasbt/algorithms_in_ipython_notebooks

  • Sorting Algorithms [IPython nb]

  • Linear regression via the least squares fit method [IPython nb]

  • Dixon's Q test to identify outliers for small sample sizes [IPython nb]

  • Sequential Selection Algorithms [IPython nb]

  • Counting points inside a hypercube [IPython nb]


###// Plotting and Visualization [[back to top](#a-collection-of-useful-scripts-tutorials-and-other-python-related-things)]

The matplotlib-gallery in IPython notebooks has been moved to a separate GitHub repository matplotlib-gallery

Featured articles:


###// Benchmarks [[back to top](#a-collection-of-useful-scripts-tutorials-and-other-python-related-things)]

The benchmark category has been moved to a separate GitHub repository One-Python-benchmark-per-day

Featured articles:

  • (C)Python compilers - Cython vs. Numba vs. Parakeet [IPython nb]

  • Just-in-time compilers for NumPy array expressions [IPython nb]

  • Cython - Bridging the gap between Python and Fortran [IPython nb]

  • Parallel processing via the multiprocessing module [IPython nb]

  • Vectorizing a classic for-loop in NumPy [IPython nb]


###// Python and "Data Science" [back to top]

The "data science"-related posts have been moved to a separate GitHub repository pattern_classification

Featured articles:

  • Entry Point: Data - Using Python's sci-packages to prepare data for Machine Learning tasks and other data analyses [IPython nb]

  • About Feature Scaling: Standardization and Min-Max-Scaling (Normalization) [IPython nb]

  • Principal Component Analysis (PCA) [IPython nb]

  • Linear Discriminant Analysis (LDA) [IPython nb]

  • Kernel density estimation via the Parzen-window technique [IPython nb]


###// Useful scripts and snippets [back to top]

  • watermark - An IPython magic extension for printing date and time stamps, version numbers, and hardware information.

  • Shell script For prepending Python-shebangs to .py files.

  • Convert 'tab-delimited' to 'comma-separated' CSV files [IPython nb]

  • A random string generator function


###// Links [back to top]


// News

  • Python subreddit - My favorite resource to catch up with Python news and great Python-related articles.

  • Python community on Google+ - A nice and friendly community to share and discuss everything about Python.

  • Python Weekly - A free weekly newsletter featuring curated news, articles, new releases, jobs etc. related to Python.


// Resources for learning Python


// My favorite Python projects and packages

  • The IPython Notebook - An interactive computational environment for combining code execution, documentation (with Markdown and LateX support), inline plots, and rich media all in one document.

  • matplotlib - Python's favorite plotting library.

  • NumPy - A library for multi-dimensional arrays and matrices, along with a large library of high-level mathematical functions to operate on these arrays.

  • SciPy - A library that provides various useful functions for numerical computing, such as modules for optimization, linear algebra, integration, interpolation, ...

  • pandas - High-performance, easy-to-use data structures and data analysis tools build on top of NumPy.

  • Cython - C-extensions for Python, an optimizing static compiler to combine Python and C code.

  • Numba - A just-in-time specializing compiler which compiles annotated Python and NumPy code to LLVM (through decorators)

  • scikit-learn - A powerful machine learning library for Python and tools for efficient data mining and analysis.