Unlock the power of data science in Python

As you know, data science is super hot. Whether you're analyzing data, working as an engineer, or creating fancy machine-learning models, your job likely involves all sorts of mathematical operations.

This sort of work requires fast, efficient processing. And thus, for years, people used the fastest-executing programming languages they could find — C, C++, and Java. In many cases, they used specialized languages and tools, such as Matlab, which did the job but cost quite a lot.

In the last few years, Python has become the #1 language in data science. This puzzles a lot of people, since Python is known for being friendly, but not for being efficient.

The key to this change is NumPy. NumPy is a library that puts a thin Python shell over C arrays. You thus get the ease of use of Python, but the efficiency (in both space and time) of C.

This sort of work requires fast, efficient processing. And thus, for years, people used the fastest-executing programming languages they could find — C, C++, and Java. In many cases, they used specialized languages and tools, such as Matlab, which did the job but cost quite a lot.

In the last few years, Python has become the #1 language in data science. This puzzles a lot of people, since Python is known for being friendly, but not for being efficient.

The key to this change is NumPy. NumPy is a library that puts a thin Python shell over C arrays. You thus get the ease of use of Python, but the efficiency (in both space and time) of C.

Not surprisingly, NumPy is wildly popular. But learning to use it can take a bit of time, because it works so differently from built-in Python data structures. Even if you're a master at Python's lists, tuples, and dictionaries, NumPy requires that you think in different ways.

For example, Python lists can contain any type of data. But NumPy arrays, because they're built on top of C, have a "dtype" associated with the entire array, describing what type of data they can (and cannot) hold. Learning what types are available, and how to choose from among them, can take some time.

For example, Python lists can contain any type of data. But NumPy arrays, because they're built on top of C, have a "dtype" associated with the entire array, describing what type of data they can (and cannot) hold. Learning what types are available, and how to choose from among them, can take some time.

I've been teaching NumPy to companies around the world for close to a decade, and I've been teaching Python for even longer than that. This course is a version of what I teach in to engineers in some of the world's most famous companies — but available to anyone with an Internet connection, and a desire to learn.

In 75 lessons and 60 exercises, I take you through each part of NumPy that you need in order to use it effectively. I show you not just how to use NumPy, but why to use it, and in what ways you can use it more effectively.

After you take this course, you'll have a powerful new tool in your toolbox. You'll be ready to take on data-analysis challenges in your current job, as well as apply for more challenging jobs down the line.

In 75 lessons and 60 exercises, I take you through each part of NumPy that you need in order to use it effectively. I show you not just how to use NumPy, but why to use it, and in what ways you can use it more effectively.

After you take this course, you'll have a powerful new tool in your toolbox. You'll be ready to take on data-analysis challenges in your current job, as well as apply for more challenging jobs down the line.

- If you've heard that data science is exciting, but haven't had the tools yet to break into this hot area, then this NumPy course is the first step you need to take.
- If you're a data scientist moving to Python from Matlab, Java, or C++, then this course will teach you the ins and outs of working with NumPy, to accomplish the same things as you did before but with far less code.
- If you're a Python developer who wants to understand why everyone is always talking about NumPy, and possibly use it in your projects, then this course is for you.

I'm Reuven Lerner, a professional Python trainer. I've been using Python since 1993, and have been teaching people to use it for more than two decades.

Just about every day, I travel to a different city, country, and company teaching engineers how to use Python. My clients include:

Just about every day, I travel to a different city, country, and company teaching engineers how to use Python. My clients include:

- Apple
- ARM
- Cisco
- IBM
- Intel
- PayPal
- VMWare
- Western Digital

This course is a version of what I've taught numerous times around the world. If you don't work for such a company, but want to benefit from the sort of training that they order for their engineers, then I'm confident this course will help you.

I'm confident that you'll get a ton out of this NumPy course. If you don't, then just e-mail me, and I'll refund your money. No time limit, either — I trust that you're reasonable.

You actually don't need to know that much Python. If you're comfortable with basic data types (ints, lists, tuples, strings, and dicts), then you're definitely ready.

That said, you'll get the most out of NumPy if you also have a good grounding in Python. And so I'd suggest that you not only learn NumPy, but that you try to get a broader understanding of Python. It'll help quite a bit, I promise!

That said, you'll get the most out of NumPy if you also have a good grounding in Python. And so I'd suggest that you not only learn NumPy, but that you try to get a broader understanding of Python. It'll help quite a bit, I promise!

The latest one as of this writing, Python 3.7.

I'm developing a separate (but similar) course about Pandas. That said, you need to know NumPy in order to work with Pandas. So this course will be a prerequisite for that one.

Yes, there are 3 discount options:

- If you join with a group of 5 or more, each person gets 20% off
- If you’re a student or pensioner, you get 20% off
- If you live in any country outside the 30 wealthiest countries in the world, you can get a discount (email me for exact discount percentage)

If you’re eligible for any of these discounts, contact me via e-mail, and I'll be delighted to provide you with the appropriate coupon code.

Then just e-mail me, at reuven@lerner.co.il . I'll be happy to answer!

76 videos
25 files

Section 1: Introduction

Section 2: Basic NumPy arrays

Section 3: Indexing

Section 4: Data types

Section 5: nan

Section 6: Multidimensional NumPy

Section 7: Input and output

Section 8: Matplotlib

Section 9: Conclusion

PDFs of slides

I think you have an exceedingly rare crystal clear explanation of all things Python.

I really liked the way you went slow and explained everything in microscopic detail, acknowledging where the NumPy syntax is non-intuitive.

I really liked the way you went slow and explained everything in microscopic detail, acknowledging where the NumPy syntax is non-intuitive.

So many tutorials dive in and start piling on statements and commands, never really acknowledging that the syntax is unusual and a departure from regular Python syntax. So as a non-pro Python person, I'm not worrying about whether my confusion comes from lack of fluency of Python (which I'm relieved to say it didn't) or from inexperience with Numpy (definitely the case, which you were able to elucidate).

David Punsalan

This course was really useful. I got both the concept and systematic

understanding of the library.

I wish to have more hands on exercises and maybe a bit more complex tasks as a part of the learning process.

New knowledge already helped me much with my task at work.

understanding of the library.

I wish to have more hands on exercises and maybe a bit more complex tasks as a part of the learning process.

New knowledge already helped me much with my task at work.

Alexander Chilingaryan