easy to collaborate data science solutions are rarely one man job often lot of collaboration is required in data science team to develop great analytical solution luckily python provides tools that make it extremely easy to collaborate for diverse team one of the most liked featureswhich empowers this collaborationare jupyter notebooks notebooks are novel concept that allow data scientists to share the codedataand insightful results in single place this makes for an easily reproducible research tool we consider this to be very important feature and will devote an entire section to cover the advantages offered by the use of notebooks one-stop solution in the first we explored how data science as field is interconnected to various domains typical project will have an iterative lifecycle that will involve data extractiondata manipulationdata analysisfeature engineeringmodelingevaluationsolution developmentdeploymentand continued updating of the solution python as multi-purpose programming language is extremely diverse and it allows developers to address all these assorted operations from common platform using python libraries you can consume data from multitude of sourcesapply different data wrangling operations to that dataapply machine learning algorithms on the processed dataand deploy the developed solution this makes python extremely useful as no interface is requiredi you don' need to port any part of the whole pipeline to some different programming language also enterprise level data science projects often require interfacing with different programming languageswhich is also achievable by using python for examplesuppose some enterprise uses custom made java library for some esoteric data manipulationthen you can use jython implementation of python to use that java library without writing custom code for the interfacing layer large and active community support the python developer community is very active and humongous in number this large community ensures that the core python language and packages remain efficient and bug free developer can seek support about python issue using variety of platforms like the python mailing liststack overflowblogsand usenet groups this large support ecosystem is also one of the reasons for making python favored language for data science introducing the python machine learning ecosystem in this sectionwe address the important components of the python machine learning ecosystem and give small introduction to each of them these components are few of the reasons why python is an important language for data science this section is structured to give you gentle introduction and acquaint you with these core data science libraries covering all of them in depth would be impractical and beyond the current scope since we would be using them in detail in subsequent another advantage of having great community of python developers is the rich content that can be found about each one of these libraries with simple search the list of components that we cover is by no means exhaustive but we have shortlisted them on the basis of their importance in the whole ecosystem jupyter notebooks jupyter notebooksformerly known as ipython notebooksare an interactive computational environment that can be used to develop python based data science analyseswhich emphasize on reproducible research the interactive environment is great for development and enables us to easily share the notebook