⭐️ Course Contents ⭐️ ⌨️ (01:15) What is NumPy ⌨️ (01:35) NumPy vs Lists (speed, functionality) ⌨️ (09:17) Applications of NumPy ⌨️ (11:08) The Basics (creating arrays, shape, size, data type) ⌨️ (16:08) Accessing/Changing Specific Elements, Rows, Columns, etc (slicing) ⌨️ (23:14) Initializing Different Arrays (1s, 0s, full, random, etc...) ⌨️ (31:34) Problem #1 (How do you initialize this array?) ⌨️ (33:42) Be careful when copying variables! ⌨️ (35:45) Basic Mathematics (arithmetic, trigonometry, etc.) ⌨️ (38:20) Linear Algebra ⌨️ (42:19) Statistics ⌨️ (43:57) Reorganizing Arrays (reshape, vstack, hstack) ⌨️ (47:29) Load data in from a file ⌨️ (50:20) Advanced Indexing and Boolean Masking ⌨️ (55:59) Problem #2 (How do you index these values?)
finally, done with the entire video, tbh, it took me 6 hours to get myself acquainted with the working of the NumPy library and the Jupyter notebook. Thank you for this awesome tutorial
Keith, I've taken a heavy interest in data science lately and your courses absolutely rock !!! Many thanks to you for teaching me these fundamentals in such an informative, easy-to-understand manner.
⭐ Course Contents ⭐ ⌨ (01:15) What is NumPy ⌨ (01:35) NumPy vs Lists (speed, functionality) ⌨ (09:17) Applications of NumPy ⌨ (11:08) The Basics (creating arrays, shape, size, data type) ⌨ (16:08) Accessing/Changing Specific Elements, Rows, Columns, etc (slicing) ⌨ (23:14) Initializing Different Arrays (1s, 0s, full, random, etc...) ⌨ (31:34) Problem #1 (How do you initialize this array?) ⌨ (33:42) Be careful when copying variables! ⌨ (35:45) Basic Mathematics (arithmetic, trigonometry, etc.) ⌨ (38:20) Linear Algebra ⌨ (42:19) Statistics ⌨ (43:57) Reorganizing Arrays (reshape, vstack, hstack) ⌨ (47:29) Load data in from a file ⌨ (50:20) Advanced Indexing and Boolean Masking ⌨ (55:59) Problem #2 (How do you index these values?)
I like the way he explains slowly and navigates around the software slowly for a beginner to grasp. Much better than those who say they want to train beginners yet rush the whole thing as if they are teaching intermediate. And the screen display is clear; not faint. Thumbs up 👍.
Here's how you watch these videos: Hover over your right arrow key and hit it when he's initializing or doing some boring stuff, and when something interesting happens, something you might wanna know, you stop, pay attention, maybe type something similar in your own jupyter notebook; continue. Don't watch it at 2x speed. It doesn't work... Reading docs is hard! So this video is really cool.
@@Blinkers2007GameDev bro i myself forgot numpy after 3 years 😂, need to rewatch the video to recall the important concepts, thanks for the comment as it reminded me to rewatch the tutorial
Just finished it. It was really awesome! I like how you would look at your notes, so that we don't see you 😂. Thanks a lot for this tutorial Keith Galli. Not following any other tutorial on Numpy. Take love!
4 years counting and this video's still a blast 😂😂 Could have given it 2 👍👍 if i could but, UA-cam only allows one so 👍 Ps. I'm so checking out your video on pandas
⭐Course Contents ⭐ ⌨ (01:15) What is NumPy ⌨ (01:35) NumPy vs Lists (speed, functionality) ⌨ (09:17) Applications of NumPy ⌨ (11:08) The Basics (creating arrays, shape, size, data type) ⌨ (16:08) Accessing/Changing Specific Elements, Rows, Columns, etc (slicing) ⌨ (23:14) Initializing Different Arrays (1s, 0s, full, random, etc...) ⌨ (31:34) Problem #1 (How do you initialize this array?) ⌨ (33:42) Be careful when copying variables! ⌨ (35:45) Basic Mathematics (arithmetic, trigonometry, etc.) ⌨ (38:20) Linear Algebra ⌨ (42:19) Statistics ⌨ (43:57) Reorganizing Arrays (reshape, vstack, hstack) ⌨ (47:29) Load data in from a file ⌨ (50:20) Advanced Indexing and Boolean Masking ⌨ (55:59) Problem #2 (How do you index these values?)
Thank you for great video, Keith Galli. I had some problem of understanding Numpy before. Thanks to your help, I have strong basic knowledge of Numpy :)
Thanks for this primer. At 27:15, can you explain why one would pass integers as two arguments instead of the tuple as an argument (as was done for previous arguments of methods). It all seems kinda hit and miss. At 28:50, why would the key be size, and not shape? Why do we use ~ and & instead of "not" and "and" for the conditions. At 31:20, does this mean we should pass lists with double square brackets generally to np.array() to ensure we have sufficient axes so that we have the option to repeat both rows and columns if we want to. At 46:15, can you explain why the argument for vstack has square brackets around v1,v2. It actually makes no sense syntactically since these outside square brackets should create another dimension on top of the two dimensions that [[v1],[v2]] already have. But vstack just stacks rows; it doesn't create another dimension. So it shouldn't work, yet it does- more syntactic nonsense 😄. At 51:30, datatype > 50 is actually an np array of Booleans so why should this work when we pass this np array as an index for the datatype array. So far, we have only seen integers used for indexing arrays e.g. array [ : , 2] etc yet here magically passing an array as an index works! More syntactic nonsense. Python seems so made up. What exactly is the extent of the types of objects that can be used for indexing arrays. Edit: I see you explained just after that it's because lists can index arrays in numpy, fair enough. Maybe you can offer an explanation. Thank again for this
Timestamps (Powered by Merlin AI) 00:01 - NumPy is essential for scientific computing and data science in Python. 02:15 - Computers read information in bytes and Numpy uses less memory space. 06:47 - Numpy utilizes contiguous memory for performance benefits 09:03 - NumPy allows for item-wise computations and has various powerful applications. 13:34 - Understanding vector dimensions and memory allocation in NumPy arrays. 15:58 - Access and modify specific elements in a 2D NumPy array 20:05 - Reassigning elements and indexing in NumPy arrays 22:15 - Indexing and replacing elements in NumPy arrays 26:28 - Generate random arrays using NumPy 28:43 - numpy.random for generating random numbers and arrays. 33:10 - NumPy array slicing and copying 35:09 - Using numpy's copy function and performing element-wise arithmetic operations 39:15 - Understanding matrix operations and multiplication 41:20 - Numpy provides functions for performing linear algebra operations like finding determinant and eigenvalues of a matrix. 45:30 - Explained vertical and horizontal stacking in NumPy arrays. 47:31 - Load data from a text file into a numpy array without using pandas 51:35 - NumPy allows indexing with lists and performing boolean operations on arrays. 53:50 - Boolean masking and advanced indexing in NumPy 58:08 - Understanding the NumPy library for Python
Even OpenCV a top choice among computer vision professionals uses numpy array to store the image data.... Basically if you know how to manipulate numpy array you can do fine / pixel level operations... really appreciate your video.
@@bhavpreetsingh1842 Hello Bhavpreet. I think that is a good practice to use square brackets to read the function, but it`s not necessary. You can test and see that works :)
I'm here because I'm doing a course where the teacher can't even explain what this is... and it's part of the program 🙄 ... Thank you so much for your tutorials, I also did the Pandas one the other day (again, my teacher failed to explain it properly) and I understood everything with your video!!
Hey. In minute 51:28 he explains how you can generate a new array with all the values over 50. Is there a elegant way of creating a new array with all the indeces of values over 50 instead of the values?
⭐️ Course Contents ⭐️
⌨️ (01:15) What is NumPy
⌨️ (01:35) NumPy vs Lists (speed, functionality)
⌨️ (09:17) Applications of NumPy
⌨️ (11:08) The Basics (creating arrays, shape, size, data type)
⌨️ (16:08) Accessing/Changing Specific Elements, Rows, Columns, etc (slicing)
⌨️ (23:14) Initializing Different Arrays (1s, 0s, full, random, etc...)
⌨️ (31:34) Problem #1 (How do you initialize this array?)
⌨️ (33:42) Be careful when copying variables!
⌨️ (35:45) Basic Mathematics (arithmetic, trigonometry, etc.)
⌨️ (38:20) Linear Algebra
⌨️ (42:19) Statistics
⌨️ (43:57) Reorganizing Arrays (reshape, vstack, hstack)
⌨️ (47:29) Load data in from a file
⌨️ (50:20) Advanced Indexing and Boolean Masking
⌨️ (55:59) Problem #2 (How do you index these values?)
Why?
thanks bhai
+
@@yahyafati u were dumb or something'
@gokul8747 is the hero of this comment section
finally, done with the entire video, tbh, it took me 6 hours to get myself acquainted with the working of the NumPy library and the Jupyter notebook. Thank you for this awesome tutorial
was it worth the time?
Seriously, side-by-side comparisons are the BEST !! As visual as it can get ! 🙏
Absolute clarity and upto speed. Very comprehensive coverage.
Thats the most english I have heard all day
@@63khushalsolanki9 lol
@@63khushalsolanki9 real
Keith, I've taken a heavy interest in data science lately and your courses absolutely rock !!!
Many thanks to you for teaching me these fundamentals in such an informative, easy-to-understand manner.
how is the progress?
How is the progress now?
How is the progress?
how is the progress now?
How is the progress now?
This was a phenomenal overview of numpy. I feel confident that I can tackle more advanced topics now!
⭐ Course Contents ⭐
⌨ (01:15) What is NumPy
⌨ (01:35) NumPy vs Lists (speed, functionality)
⌨ (09:17) Applications of NumPy
⌨ (11:08) The Basics (creating arrays, shape, size, data type)
⌨ (16:08) Accessing/Changing Specific Elements, Rows, Columns, etc (slicing)
⌨ (23:14) Initializing Different Arrays (1s, 0s, full, random, etc...)
⌨ (31:34) Problem #1 (How do you initialize this array?)
⌨ (33:42) Be careful when copying variables!
⌨ (35:45) Basic Mathematics (arithmetic, trigonometry, etc.)
⌨ (38:20) Linear Algebra
⌨ (42:19) Statistics
⌨ (43:57) Reorganizing Arrays (reshape, vstack, hstack)
⌨ (47:29) Load data in from a file
⌨ (50:20) Advanced Indexing and Boolean Masking
⌨ (55:59) Problem #2 (How do you index these values?)
Thanks mate ❤
I like the way he explains slowly and navigates around the software slowly for a beginner to grasp. Much better than those who say they want to train beginners yet rush the whole thing as if they are teaching intermediate. And the screen display is clear; not faint.
Thumbs up 👍.
1.25 speed is perfect, thanks for the video
thanks for tips
I'm on 2.5
Thx bro
Yup
2x speed is better. Saves alot of time.
Here's how you watch these videos:
Hover over your right arrow key and hit it when he's initializing or doing some boring stuff,
and when something interesting happens, something you might wanna know, you stop, pay attention, maybe type something similar in your own jupyter notebook; continue.
Don't watch it at 2x speed. It doesn't work...
Reading docs is hard! So this video is really cool.
You Sir are an amazing teacher!! There are many software gurus in the world, but sadly few who can impart their knowledge as you do...
Here is another NumPy tutorial I created which you may like: ua-cam.com/video/KrWcRePnq8U/v-deo.html
Super helpful tutorial.
When you went back and used -1 indexes instead of exclusive 4's at 33:36 my world stopped imploding. Thank you.
Why tho?
One of the finest Numpy tutorials. Keep up the great work guys!
Agreed! Learned alot by writing down
@@Blinkers2007GameDev bro i myself forgot numpy after 3 years 😂, need to rewatch the video to recall the important concepts, thanks for the comment as it reminded me to rewatch the tutorial
@@nemesis_rc I forgot it after 3 months
for the part at 31:50
a = np.zeros((5,5), dtype='int8')
a[:,0:5:4], a[0:5:4,:], a[2,2] = 1, 1, 9
This is the first tutorial that I actually finished. Thank you, Keith!
same
Much better than courses that I've paid good money for - Top Man Galli
great vid, thanks for leaving the little mistakes in there, helps me remember that I dont have to be perfect at this and remember every little thing
Well done. Quick ,short & straight to the point!
Random Permutation in Numpy will be available at ua-cam.com/video/e84SB_4qAjM/v-deo.html
This guy is smart and he makes this stuff really interesting !!! I like it !!!
imp points:
5:38 contiguous memory
8:28 how are lists diff than Numpy
9:42 applications of numpy
26:17 full and full like
Sir wherebshoyld we work out these ??
This video improved my numpy information. So thanks everybody who contributed.
Thanks you Keith , great video (also subscribed to your channel). Also thanks to FCC , love you for your service!
Thanks for the free class! I'm just learning programming :) I felt very motivated after I could make the array on Problem #1
learning as well, would u like a study budy?
You are really great, the effort in your code is impeccable.
Just finished it. It was really awesome! I like how you would look at your notes, so that we don't see you 😂. Thanks a lot for this tutorial Keith Galli. Not following any other tutorial on Numpy. Take love!
4 years counting and this video's still a blast 😂😂
Could have given it 2 👍👍 if i could but, UA-cam only allows one so 👍
Ps.
I'm so checking out your video on pandas
You can actually give two likes by another account lol
This is absolutely great content! Thank you so much for doing this!
⭐Course Contents ⭐
⌨ (01:15) What is NumPy
⌨ (01:35) NumPy vs Lists (speed, functionality)
⌨ (09:17) Applications of NumPy
⌨ (11:08) The Basics (creating arrays, shape, size, data type)
⌨ (16:08) Accessing/Changing Specific Elements, Rows, Columns, etc (slicing)
⌨ (23:14) Initializing Different Arrays (1s, 0s, full, random, etc...)
⌨ (31:34) Problem #1 (How do you initialize this array?)
⌨ (33:42) Be careful when copying variables!
⌨ (35:45) Basic Mathematics (arithmetic, trigonometry, etc.)
⌨ (38:20) Linear Algebra
⌨ (42:19) Statistics
⌨ (43:57) Reorganizing Arrays (reshape, vstack, hstack)
⌨ (47:29) Load data in from a file
⌨ (50:20) Advanced Indexing and Boolean Masking
⌨ (55:59) Problem #2 (How do you index these values?)
56:00
b=[ ]
for i in range(1,31):
b.append(i)
c=np.array(b)
c=c.reshape(6,5)
print(c)
Thank you for great video, Keith Galli. I had some problem of understanding Numpy before. Thanks to your help, I have strong basic knowledge of Numpy :)
Thanks for this primer.
At 27:15, can you explain why one would pass integers as two arguments instead of the tuple as an argument (as was done for previous arguments of methods). It all seems kinda hit and miss.
At 28:50, why would the key be size, and not shape?
Why do we use ~ and & instead of "not" and "and" for the conditions.
At 31:20, does this mean we should pass lists with double square brackets generally to np.array() to ensure we have sufficient axes so that we have the option to repeat both rows and columns if we want to.
At 46:15, can you explain why the argument for vstack has square brackets around v1,v2. It actually makes no sense syntactically since these outside square brackets should create another dimension on top of the two dimensions that [[v1],[v2]] already have. But vstack just stacks rows; it doesn't create another dimension. So it shouldn't work, yet it does- more syntactic nonsense 😄.
At 51:30, datatype > 50 is actually an np array of Booleans so why should this work when we pass this np array as an index for the datatype array. So far, we have only seen integers used for indexing arrays e.g. array [ : , 2] etc yet here magically passing an array as an index works! More syntactic nonsense. Python seems so made up. What exactly is the extent of the types of objects that can be used for indexing arrays.
Edit: I see you explained just after that it's because lists can index arrays in numpy, fair enough.
Maybe you can offer an explanation.
Thank again for this
Thank you very much sir... the course is crystal clear... thank you
Best crash course on Numpy ! Thank you for your interesting videos
Watching this at 2x speed so I can learn Numpy in 29 minutes instead of 58 minutes.
i have installed video controller extension, i am watching at 2.5x
@@krrishkataria560Just don't watch the video and read the specific documentation. It will be even faster if you have skill.
Skip the first 9 min
one of the best numpy tutorial ever
Answer for 31:34
import numpy as np
a=np.ones((5,5),dtype='int8')
b=np.zeros((3,3),dtype='int8')
a[1:-1,1:-1]=b
a[2,2]=9
print(a)
You don't need to create b. It just wastes memory. Just do this:
i5 = np.ones((5,5))
i5[1:4,1:4] = 0
i5[2,2] = 9
print(i5)
Amazing! Thank you for the explanation dude. It is really helping me with a certification course that I’m taking now
THANK YOU SO MUCH omg best python lecture ever
Nice mate! What a wonderful review from all the possible uses of Numpy. Thanks a lot!
Awesome Tutorial. Thank you very much, Keith !
Excellent pace and explanations -- thank you!
Thanks
Really amazing introduction to numpy, it helps a lot
Thank you man!
Timestamps (Powered by Merlin AI)
00:01 - NumPy is essential for scientific computing and data science in Python.
02:15 - Computers read information in bytes and Numpy uses less memory space.
06:47 - Numpy utilizes contiguous memory for performance benefits
09:03 - NumPy allows for item-wise computations and has various powerful applications.
13:34 - Understanding vector dimensions and memory allocation in NumPy arrays.
15:58 - Access and modify specific elements in a 2D NumPy array
20:05 - Reassigning elements and indexing in NumPy arrays
22:15 - Indexing and replacing elements in NumPy arrays
26:28 - Generate random arrays using NumPy
28:43 - numpy.random for generating random numbers and arrays.
33:10 - NumPy array slicing and copying
35:09 - Using numpy's copy function and performing element-wise arithmetic operations
39:15 - Understanding matrix operations and multiplication
41:20 - Numpy provides functions for performing linear algebra operations like finding determinant and eigenvalues of a matrix.
45:30 - Explained vertical and horizontal stacking in NumPy arrays.
47:31 - Load data from a text file into a numpy array without using pandas
51:35 - NumPy allows indexing with lists and performing boolean operations on arrays.
53:50 - Boolean masking and advanced indexing in NumPy
58:08 - Understanding the NumPy library for Python
when I start the video I have no idea about the numpy but now at the end of the video I can do things in numpy
Thanks bro you I have learnt a TON of stuff from your tutorials
Good job, way to go. Salute from Brazil.
Thank You for clearing my concepts on NumPy library.
love the content ! i have just started to learn numpy for my course and this certainly helped !! cheers , would be looking forward to your content!
excellent tutorial. feeling comfortable with numpy now thanks to you :)
Really well put together, thanks! :)
Really great review on NumPy. Thanks for explaining such an easier way.
50:00
test = np.genfromtxt('sample.txt', delimiter=',', dtype = 'int32')
This too works
Thank you! The only thing was a little bit complicated to me is working with axis. None the less, great tutorial!
رحؤنشضهكبءخؤذمء ء يددحمس
The first 11 minutes of the video have really useful info
Thank you for the video, its help me a lot to understand the concept and the function
welcome to check my playlists also. I made most of the videos for Python and R. easy to follow.
ur tutorial IS AWESOME, plz do more man i also watched ur pandas too and it was as expectedly AWESOME tnx for the help man i appreciate it
I pressed the thumb up twice as you wanted
Excellent sir, very well explained !! Many thanks for uploading. 5 stars. ⭐⭐⭐⭐⭐
Just completed this tutorial. Thanks a lot for the content. Peace Out!!
56:02
how to make the array:
p1 = np.zeros((6,5), dtype='int8')
x = 0
for i in range(6):
for j in range(5):
x+=1
p1[i,j] = x
Thank you Keith for this awesome tutorial!
31:50
def init_array(rows, columns):
p = np.zeros((rows, columns), dtype='int8')
p[0,:] = p[-1,:] = p[:,0] = p[:,-1] = 1
p[p.shape[0]//2, p.shape[1]//2] = 9
return(p)
init_array(5,5)
THANKS I THINK YOU ARE MARRIED
Really useful video! Been using Pandas for a couple years but learning Numpy is showing me why Pandas does the things it does.
Even OpenCV a top choice among computer vision professionals uses numpy array to store the image data....
Basically if you know how to manipulate numpy array you can do fine / pixel level operations...
really appreciate your video.
what a descriptive video on numpy 👍👍👍
amazing lecture by amazing teacher⭐⭐⭐⭐⭐
The second exercise from last part we can do this as well: a[range(0,4),range(1,5)]
shouldn't the two range functions be in square brackets so as to make them a list
@@bhavpreetsingh1842 Hello Bhavpreet. I think that is a good practice to use square brackets to read the function, but it`s not necessary. You can test and see that works :)
Even i did the same way ✌️🤟
Mine: np.hstack(a[0:4, 1:5])[0:19:5]
a = Np.arrane([0, 4] [1,5]) is more efficient
I did the matrix exercise a bit differently:
arr = np.ones((5, 5))
arr[1:-1, 1:-1] = np.zeros((3, 3))
arr[2, 2] = 9
Nice. I noticed, you can also just use 0 instead of np.zeros((3, 3))
31:50
p = np.ones((5,5),dtype='int32')
p[1:4,1:4] = 0
p[2,2] = 9
Thanks so much Keith, for the very educating tutorial. Quite explanatory
We can also solve the exercise at 33' using
output = np.ones((5,5))
print(output)
output[1:4,1:4]=0
print(output)
output[2,2]=9
print(output)
I solved it in the same way as you :)
Thank you for clearing my concepts.
Awesome Keith, thank you for this great video
Love. this. Truly great content and it was even nice to see the little faux pas because everyone has those!
Thank you for the useful content. The very quick start with numpy.
Thanks for your effort and the good stuff. Effective introductory! Thanks
I'm here because I'm doing a course where the teacher can't even explain what this is... and it's part of the program 🙄 ... Thank you so much for your tutorials, I also did the Pandas one the other day (again, my teacher failed to explain it properly) and I understood everything with your video!!
Hey. In minute 51:28 he explains how you can generate a new array with all the values over 50. Is there a elegant way of creating a new array with all the indeces of values over 50 instead of the values?
Thanks for this amazing course!!
Fantastic Tutorial !!!!
Loved It !!!
exactly what i was looking for
Still Nice after 5 years. Thanks
great video about numpy. Thank you a lot and hope that you can make more video like this ones
Awesome work dude.
love from India
thanks you so much man, the video helped me a lot
@29:00 is def apart of my process while coding.
Thanks a lot, man. You are amazing.
31:36
ap=np.ones((5, 5), dtype='int16')
ap[1, 1:4]=0
ap[3, 1:4]=0
ap[2, 1:4:2]=0
ap[2, 2]=9
print(ap)
33:47
I made a shorter one from your tips
import numpy as np
a=np.ones((5,5))
a[1:4,1:4]=[[0,0,0],[0,9,0],[0,0,0]]
print(a)
Great video👏 thank you
Thank you for uploading this.
I recommend 1.5 speed. Great video!
Thanks for this video Keith
Really good information delivery.
Omg I wish you had been teaching my programming class 😁
completed. thanks man! u r amazing
Thnx for these great lessons
.😇