This shows you the differences between two versions of the page.

ep:labs:05 [2020/11/10 16:32] ioan_adrian.cosma [Python Scientific Computing] |
ep:labs:05 [2020/11/10 16:44] (current) ioan_adrian.cosma [Python Scientific Computing Resources] |
||
---|---|---|---|

Line 8: | Line 8: | ||

- | ===== Contents ===== | ||

- | {{page>:ep:labs:05:meta:nav&nofooter&noeditbutton}} | ||

- | ===== Python Scientific Computing ===== | + | ===== Python Scientific Computing Resources ===== |

In this lab, we will study a new library in python that offers fast, memory efficient manipulation of vectors, matrices and tensors: **numpy**. We will also study basic plotting of data using the most popular data visualization libraries in the python ecosystem: **matplotlib**. | In this lab, we will study a new library in python that offers fast, memory efficient manipulation of vectors, matrices and tensors: **numpy**. We will also study basic plotting of data using the most popular data visualization libraries in the python ecosystem: **matplotlib**. | ||

Line 20: | Line 18: | ||

Python is very easy to use, but the downside is that it's not fast at numerical computing. Luckily, we have very eficient libraries for all our use-cases. | Python is very easy to use, but the downside is that it's not fast at numerical computing. Luckily, we have very eficient libraries for all our use-cases. | ||

- | ## Libraries | + | **Core computing libraries** |

- | ### Core computing libraries | + | * numpy and scipy: scientific computing |

+ | * matplotlib: plotting library | ||

- | - `numpy` and `scipy`: scientific computing | + | **Machine Learning** |

- | - `matplotlib`: plotting library | + | |

- | ### Machine Learning | + | * sklearn: machine learning toolkit |

- | - `sklearn`: machine learning toolkit | + | * tensorflow: deep learning framework developed by google |

- | - `tensorflow`: deep learning framework developed by google | + | * keras: deep learning framework on top of `tensorflow` for easier implementation |

- | - `keras`: deep learning framework on top of `tensorflow` for easier implementation | + | * pytorch: deep learning framework developed by facebook |

- | - `pytorch`: deep learning framework developed by facebook | + | |

- | ## Statistics and data analysis | + | **Statistics and data analysis** |

- | - `pandas`: very popular data analysis library | + | |

- | - `statsmodels`: statistics | + | * pandas: very popular data analysis library |

+ | * statsmodels: statistics | ||

We also have advanced interactive environments: | We also have advanced interactive environments: | ||

- | - Ipython: advanced python console | + | |

- | - Jupyter: notebooks in the browser | + | * IPython: advanced python console |

+ | * Jupyter: notebooks in the browser | ||

There are many more scientific libraries available. | There are many more scientific libraries available. | ||

- | ===== Tutorial ===== | ||

- | {{namespace>:ep:labs:05:contents:tutorial&nofooter&noeditbutton}} | + | Check out these cheetsheets for fast reference to the common libraries: |

+ | | ||

+ | **Cheat sheets:** | ||

+ | | ||

+ | - [[https://perso.limsi.fr/pointal/_media/python:cours:mementopython3-english.pdf)|python]] | ||

+ | - [[https://s3.amazonaws.com/assets.datacamp.com/blog_assets/Numpy_Python_Cheat_Sheet.pdf|numpy]] | ||

+ | - [[https://s3.amazonaws.com/assets.datacamp.com/blog_assets/Python_Matplotlib_Cheat_Sheet.pdf|matplotlib]] | ||

+ | - [[https://s3.amazonaws.com/assets.datacamp.com/blog_assets/Scikit_Learn_Cheat_Sheet_Python.pdf|sklearn]] | ||

+ | - [[https://github.com/pandas-dev/pandas/blob/master/doc/cheatsheet/Pandas_Cheat_Sheet.pdf|pandas]] | ||

+ | | ||

+ | **Other:** | ||

+ | | ||

+ | - [[https://stanford.edu/~shervine/teaching/cs-229/refresher-probabilities-statistics|Probabilities & Stats Refresher]] | ||

+ | - [[https://stanford.edu/~shervine/teaching/cs-229/refresher-algebra-calculus|Algebra]] | ||

+ | <note>This lab is organized in a Jupyer Notebook hosted on Google Colab. You will find there some intuitions and applications for numpy and matplotlib. Check out the Tasks section below.</note> | ||

===== Tasks ===== | ===== Tasks ===== |