Before I get stuck into my basic beginners guide to learning PYTHON and why you should, it must first be made abundantly clear that I am in no way an expert in the language. I have made the ever so daunting jump into learning it though, which is a crucial step and one that some may find the hardest to accomplish. Once you get going it really is an incredibly useful language with tons of applications.
First and foremost, what is PYTHON? Well lets ask them - according to their website, PYTHON is:
"an interpreted, object-oriented, high-level programming language with dynamic semantics. Its high-level built in data structures, combined with dynamic typing and dynamic binding, make it very attractive for Rapid Application Development, as well as for use as a scripting or glue language to connect existing components together. Python's simple, easy to learn syntax emphasizes readability and therefore reduces the cost of program maintenance. Python supports modules and packages, which encourages program modularity and code reuse. The Python interpreter and the extensive standard library are available in source or binary form without charge for all major platforms, and can be freely distributed."
So PYTHON can do ALOT, but where do you start? I eased myself into it using a platform called Jupyter Notebook. The Jupyter Notebook App is a server-client application that allows editing and running notebook documents via a web browser. It can be downloaded and installed on your PC or accessed via a browser. To do this you can use PYTHON's package manager - Pip, or you can use the Anaconda distribution.
Once you've opened a new Jupyter Notebook it should look like this:
Now you can start coding, or in my case - looking for resources to learn how to code. I learnt from an online course, of which there are millions to choose from. See here.
Through my own experience, the method which enabled me to learn the fastest was to build my own models and research when I got stuck. One of the greatest perks of using PYTHON is that it is seriously popular, so when you encounter a problem the chance that someone else has solved it is large. Websites such as Stack Overflow have a vast community of people (including experts) who can solve or already have solved the issues you may have.
So why should you even bother learning PYTHON?
When it comes to data science, PYTHON is an incredibly useful language for a number of reasons:
- Its simple (i.e., its readable and easy to maintain),
- There are tons of useful libraries (Pandas, Numpy, SciPy etc) which are applicable in all industries,
- Multi-paradigm approach,
- Simplify complex software development,
- and as stated before - the massive community and resources available.
PYTHON is also used to streamline large datasets, making it efficient for people working with large datasets, which is applicable to Data Schoolers. Tableau has an API called TabPy which allows the evaluation of PYTHON code from within a tableau workbook. This allows for :
- Real-time interaction: You want to have a real-time user interface, minimizing the processing time and delay between a parameter change and updated visualization.
- Multiple levels of aggregation: You want to show (several different) aggregation levels on the same Tableau dashboards, but you need to perform all the calculations using the finest and most granular level, containing all information.
- Various data sources: The back-end calculation is relying on more than a single data source and/or database
- Data transferred between Tableau and Python: Need significant amount of data for each optimization step, so a lot of data must be transferred between Tableau and the Python back end. (SOURCE: Tableau.com)
So there you have it - if you want to start learning to write code in PYTHON here is your reason to get started! I'm still in the early stages of my journey with this language, fumbling around and getting attacked by bugs, but I'm 100% sure it is worth it!