| # Numpy_Basics | |
|  | |
| <h2>What is NumPy?</h2> | |
| <p>NumPy is a Python library used for working with arrays. | |
| It also has functions for working in domain of linear algebra, fourier transform, and matrices. | |
| NumPy was created in 2005 by Travis Oliphant. It is an open source project and you can use it freely. | |
| NumPy stands for Numerical Python.</p> | |
| -------------------------------------------------------------------------------------------------------------------------------------------------- | |
| <h2>Why Use NumPy?</h2> | |
| <p>In Python we have lists that serve the purpose of arrays, but they are slow to process. | |
| NumPy aims to provide an array object that is up to 50x faster than traditional Python lists. | |
| The array object in NumPy is called ndarray, it provides a lot of supporting functions that make working with ndarray very easy. | |
| Arrays are very frequently used in data science, where speed and resources are very important.</p> | |
| -------------------------------------------------------------------------------------------------------------------------------------------------- | |
| <h2>Why is NumPy Faster Than Lists?</h2> | |
| <p>NumPy arrays are stored at one continuous place in memory unlike lists, so processes can access and manipulate them very efficiently. | |
| This behavior is called locality of reference in computer science. | |
| This is the main reason why NumPy is faster than lists. Also it is optimized to work with latest CPU architectures.</p> | |
| -------------------------------------------------------------------------------------------------------------------------------------------------- | |
| <h2>Which Language is NumPy written in?</h2> | |
| <p>NumPy is a Python library and is written partially in Python, but most of the parts that require fast computation are written in C or C++.</p> | |