top of page
Search

Numpy Starter Functions

Numpy arrays are closer to hardware. Thus, their execution/operation times are significantly lesser compared to the usual pythonic lists. They consume less memory, and are far more flexible which makes them the preferred choice when working with huge data sets.


import numpy as np
import time
import sys

One dimensional array

a = np.array([1, 2, 3])
print(a)

Two dimensional array

b = np.array([[1, 2, 3], [4, 5, 6]])
print(b) 

Memory difference can be observed between a numpy array and a python list

lis = [x for x in range(1000)]
print(sys.getsizeof(lis[0])*len(lis)) 
# Storage required by a python list - 12000

arr = np.arange(1000)
print(arr.size*arr.itemsize) 
# Storage required by numpy array - 4000

Shape of a numpy array is described in terms of number of rows and columns

c = np.array([[1, 5, 7], [4, 8, 9]])
print(c.shape)
# Prints out a tuple (2, 3)
# 2 rows and 3 columns

Reshape an array - (rows x columns) -> (columns x rows)

d = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
d_modified = d.reshape(4, 2)
print(d_modified)  
# [[1, 2], [3, 4], [5, 6], [7, 8]]


Slicing

print(d[0, 2])  
# 0th row, 3rd element -> 3

print(d[0:, 2])
# All rows starting from 0 and their
# respective 3rd elements -> [3,7]

Linspace -> np.linspace(x, y, z)

Prints out z equally spaced numbers between x and y (both included)

e = np.linspace(1, 3, 5)
print(e)
# [1, 1.5, 2, 2.5, 3]


Math Operations:

f = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
print(np.sum(f))
print(np.sum(f, axis=0))  
# 0 is columns and 1 is rows

print(np.mean(f))
print(np.median(f))
print(np.std(f))  
# std -> Standard deviation

Numpy performs element wise operations when we do +, -, *, / on two numpy arrays. To concatenate two arrays we can use np.vstack() and np.hstack() and concatenate horizontally or vertically


np.arange(start, stop, steps) - Returns evenly spaced values within a given interval.

print(np.arange(1, 10, 2))
# [1, 3, 5, 7, 9]
# upper limit (10) isn't considered

g = np.arange(6)  
# [0, 1, 2, 3, 4, 5]

Shuffle - Numbers in array are shuffled. If array is multi-dimensional, rows will be shuffled

h = np.arange(5)  
# [0, 1, 2, 3, 4]
k = np.random.shuffle(h)
print(k)  
# [1, 4, 3, 0, 2]

bottom of page