**Heads up!** To view this whole video, sign in with your Courses account or enroll in your free 7-day trial.
Sign In
Enroll

Preview

Start a free Courses trial

to watch this video

Let's get started!

[MUSIC]
0:00

Hi, I'm Craig and I'm a developer.
0:09

In this course we're going to be taking
a look at Python's wonderful data
0:11

library, NumPy.
0:14

You'll find NumPy in all
sorts of applications, and
0:16

therefore, it's fairly critical that you
have an understanding of its fundamentals.
0:18

It appears in every direction
you may head in Python.
0:23

Should you plan to get into data analysis,
there's scientific computing, or
0:25

even machine learning,
you're going to bump into NumPy and
0:28

that's what this course is all about.
0:31

It's an introduction.
0:33

I want to introduce you
to the library early on.
0:35

I'll walk through hands-on examples
that will give you a great introduction
0:37

to the library, it's main concepts and
the surrounding terminology.
0:40

When you've complete the course,
you'll have a great foundation and
0:44

you'll know where to turn when you
need more specific information.
0:46

But, before we get started, let's take
some time to make sure that you're
0:50

familiar with your learning environment.
0:54

First off, there are some prerequisites to
this course, and I'd love for you to make
0:56

sure that we're on the same page about
where you are in your coding journey.
0:59

There's speed control on the video player,
so please feel free to speed me up or slow
1:03

me down, pause me, make me repeat myself,
whatever you like, I won't mind at all.
1:08

You are in complete
control of your learning.
1:12

A quick reminder,
there are notes attached to each video.
1:15

This section is usually filled with
additional information that will
1:18

enhance your knowledge should you want
to dive deeper into related topics.
1:21

Get in the habit of checking this space,
and
1:24

I'll do my best to remind you when I've
put info there that you just have to see.
1:26

One more tip,
1:32

remember that there is a community of
fellow learners also taking this course.
1:33

I encourage you to lean on each other.
1:36

If you have a question,
make sure to ask it.
1:38

Our community is very friendly and
approachable.
1:40

Also, remember,
1:43

nothing helps to submit your learning
better than answering a question.
1:43

Make sure to check out the community
throughout the course, and
1:47

see if you can help out a fellow learner.
1:49

We've established that NumPy is
extremely popular in many fields of
1:52

the Python landscape.
1:55

But what is it exactly?
1:57

NumPy is short for numerical Python.
1:59

It deals with numbers.
2:02

So that makes sense, all those
applications that I mentioned would indeed
2:03

need to use numbers and
math equations in some shape or form.
2:07

But as someone who is actively learning
Python, you might cleverly state,
2:11

wait a second, I can use numbers and
do math just fine and play an old Python.
2:15

What's the big deal?
2:19

Why do we need this?
2:20

That's a wonderful question and
the short answer is that NumPy is much
2:21

faster than the straight Python approach,
no matter how great of a coder you are.
2:25

It leans on a paradigm which we'll
get into here shortly called
2:29

array programming.
2:32

It completely removes the need to loop
over your data which speeds things up
2:33

tremendously.
2:37

NumPy also provides additional
mathematical abilities
2:39

not available in standard Python.
2:42

Many numerical concepts have
been extracted away for you and
2:44

provided as functions.
2:47

Chances are you probably aren't going
to use all of those helper functions.
2:49

However, the applications
that your building, you know,
2:53

the ones that are relying on the library,
they most likely will.
2:55

NumPy exposes concepts from linear
algebra, matrix multiplication,
2:59

fourier transformations and many more
themes that you might remember from
3:03

your math class if math
is in your area of study.
3:07

Now, just a heads up,
it's totally fine is math isn't your jam.
3:10

It really doesn't need to be.
3:14

That's kind of the beauty
of these abstractions.
3:15

You'll use them when you need them.
3:17

My advice is just to stay focus
on where we're headed and
3:19

don't let the shiny tools and
terms distract you too much.
3:22

I'll point out what I think is important
at this part of your learning journey.
3:25

Now, believe it or
3:28

not, that was the short answer to the why
would you want to use NumPy question.
3:29

The long answer is gonna
take me a couple of videos
3:34

to get you to see
the beauty that is NumPy.
3:37

One of the more challenging tasks
of picking up NumPy is simply just
3:40

remembering to how to use
the object that it provides.
3:43

So I was thinking of facing
that challenge head on.
3:46

Let's do this.
3:49

Let's build a Jupiter Notebook together.
3:49

And then you'd have a reference, and we
can kind of treat it like a cheat sheet.
3:52

You can then quickly glance at it or
3:55

even practice some more with
the datasets that we build up.
3:57

Sound good?
3:59

Speaking of practice,
that gives me a great idea.
4:01

Have you heard of the movement
called 100 days of code?
4:03

It's a wonderful idea that the life-long
learner, Alexander Callaway came up with.
4:06

The way it works is this,
4:11

you publicly commit to coding at
least an hour a day for 100 days.
4:12

You post about it on social media,
usually Twitter, and
4:16

you hold yourself accountable.
4:19

It's wonderful for learning.
4:21

Steady practice will
strengthen your skills.
4:23

It creates a great habit of learning.
4:25

It also seems like a great way to
explore the NumPy array data structure.
4:27

We can use it to track and
analyze our time.
4:32

The only downside that I can see is that
it might create some pretty mega tweets.
4:34

If you are committing to learning NumPy
and creating a log to help track and
4:39

analyze your 100 days of code in NumPy,
4:42

reporting on your learning is going to
create a tongue twister of a tweet.
4:44

You'll figure it out.
4:48

So what are we waiting for?
4:50

What do you say we get things all set up?
4:51

You need to sign up for Treehouse in order to download course files.

Sign up