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

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