Why Excel users need to learn Python
By: Kelechi Emenike
Tags: Microsoft Excel, Python, Reporting, Data Science, Data Analysis

Python for Excel users

Why Excel users need to learn Python

If you have gotten to the point where Excel can no longer handle what you throw at it, then you may need to start considering Python

I love Microsoft Excel. It is (almost) the most valuable tool in my arsenal for data analysis. Well, almost. But as powerful as Excel is, there are many times I had wished I could do more, especially when I hit the ‘limits’ of Excel — and if you work with Excel every day, you would notice that there are quite a number of limitations of Excel that can easily become a thorn in your flesh.

I’m not here to try to make Excel look bad, no, Excel is still the most popular tool for data manipulation — albeit on a limited scale. If you use Excel for simple data analytics and simple dashboard reporting, you can easily get by with no concerns. But if you have gotten to the point where you wish you could automate your reporting, manipulate much large datasets with better speed and less drag, or perform more powerful computations, then you should most likely read on.

Python is not limited by size

Excel can handle over 1 million rows (1,048,576 to be specific). However, when you exceed 10,000 rows, you would notice that the workbook starts to slow down significantly. Try this with more sheets, and you are sure to experience annoyingly erratic workbook crashes.

Python however, can handle millions and millions of rows without any hassle, you are only limited by your PC computing power.

Python is not limited by memory

Memory-intensive computations like array formulas (CSE) in Excel can easily crash your workbook, sadly. Many improvements have been made by Microsoft via the power tools (PowerQuery, PowerPivot, PowerBI etc) but the memory limitations haven’t gone away. Python, using libraries like numpy and pandas, on the other hand, can handle very complex computations without breaking a sweat.

Python has no integration limitations

No data analysis tool has more integration capabilities than Python. You can connect to CSV files, HTML web pages, SQL databases, and even NoSQL databases too. Developers are constantly writing more efficient tools and libraries to integrate their applications with Python

Automation is not possible with Excel, sadly

Excel was not designed to automate tasks, so asking automation of Excel would be unfair. Using Task Scheduling tools, Excel users have been able to perform entry level automation that heavily depends on the availability of Excel in the user PC though. However, Python’s capability to automate tasks is simply limitless. Instead of having to open a file every week to run your analysis before attaching the result to an email to send, you can just automate this workflow with Python, and completely eliminate the need for human interaction in the process — leaving the only action needed to be the supply of the source document for analysis.

Cross-platform capabilities

Have you been faced with issues where some formulas in your sheet doesn’t work on the Mac because you did your analysis on a Windows machine? This is very common with Microsoft Excel, but very rare with Python. Libraries may have deprecated functions moving from one version to the next (as with all software upgrades obviously), but cross-platform compatibility doesn’t affect data analysis in Python

Open Source Community and Support

Python is completely free and open source. No licensing fees, no renewals, no financial commitment needed to keep your data analysis project running. And with a massive community support, you can almost never get stuck if you’re faced with any trouble. There are a lot of resources out there that you can easily get solutions to challenges (the Python documentation, Stack Overflow, Medium etc)

So should I ditch Excel?

No, you don’t need to! Python libraries like pandas have been designed so that you can easily import your data from Excel to Python and back to Excel. So instead of trying to create that ‘master sheet’ in Excel to hold your hundreds of source workbooks, you can use Python to connect all those source workbooks for analysis, and then export the results of your analysis back to Excel to present to management. With knowledge of Python, you can supercharge your Excel analysis and reporting

Photo credit — author

How can I start learning Python?

Learning Python is as easy as installing python and reading the documentation. I admit even that this can take some getting used to, so you can reach out on Twitter (@kcemenike), Github (https://github.com/kcemenike) or you can join the #CodeAlong sessions for beginners on Telegram (https://t.me/PyDataCo)

Kelechi EMENIKE is a Python evangelist, and data strategist. You can join his live beginner #CodeAlong sessions on Telegram (https://t.me/pydataco)