NumPy (Python for Data Science)

BATHULA PRAVEEN (BP)
0

NumPy 

The NumPy library is the core library for scientific computing in Python. It provides a high-performance multidimensional array object, and tools for working with these arrays. 

 Use the following import convention: 

>>> import numpy as np


Creating Arrays

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

>>> b = np.array([(1.5,2,3), (4,5,6)], dtype = float) 

>>> c = np.array([[(1.5,2,3), (4,5,6)], [(3,2,1), (4,5,6)]], dtype = float)

Initial Placeholders

>>> np.zeros((3,4))          Create an array of zeros 

>>> np.ones((2,3,4),dtype=np.int16)             Create an array of ones 

>>> d = np.arange(10,25,5)             Create an array of evenly spaced values (step value)

 >>> np.linspace(0,2,9)              Create an array of evenly spaced values (number of samples) 

>>> e = np.full((2,2),7)           create a constant array

 >>> f = np.eye(2)        Create a 2X2 identity matrix 

>>> np.random.random((2,2))         Create an array with random values 

>>> np.empty((3,2))       Create an empty array

Input/Output

Saving and loading on disk

>>> np.save('my_array', a) 

>>> np.savez('array.npz', a, b) 

>>> np.load('my_array.npy') 

Saving and Loading on Textfile

>>> np.loadtxt("myfile.txt")

 >>> np.genfromtxt("my_file.csv", delimiter=',')

 >>> np.savetxt("myarray.txt", a, delimiter=" ") 

DataTypes

>>> np.int64          Signed 64-bit integer types

 >>> np.float32            Standard double-precision floating point 

>>> np.complex           Complex numbers represented by 128 floats

>>> np.bool              Boolean type storing TRUE and FALSE values 

>>> np.object            Python object type 

>>> np.string_          Fixed-length string type

  >>> np.unicode_         Fixed-length unicode type

Inspecting Array

>>> a.shape       Array dimensions 

>>> len(a)              Length of array

 >>> b.ndim            Number of array dimensions 

>>> e.size            Number of array elements 

>>> b.dtype             Data type of array elements

 >>> b.dtype.name           Name of data type 

>>> b.astype(int)           Convert an array to a different type

Array Mathematics 

Airthmetic operations

>>> g = a - b       Subtraction array

([[-0.5, 0. , 0. ], [-3. , -3. , -3. ]])

 >>> np.subtract(a,b)        Subtraction 

>>> b + a        Addition 

 array([[ 2.5, 4. , 6. ], [ 5. , 7. , 9. ]]) 

>>> np.add(b,a)       Addition 

>>> a / b       Division array

([[ 0.66666667, 1. , 1. ], [ 0.25 , 0.4 , 0.5 ]])

 >>> np.divide(a,b)        Division 

>>> a * b        Multiplication 

 array([[ 1.5, 4. , 9. ], [ 4. , 10. , 18. ]]) 

>>> np.multiply(a,b)         Multiplication 

>>> np.exp(b)         Exponentiation 

>>> np.sqrt(b)           Square root

 >>> np.sin(a)            Print sines of an array 

>>> np.cos(b)            Element-wise cosine 

>>> np.log(a)        Element-wise natural logarithm 

>>> e.dot(f)         Dot product 

 

Comparision 

>>> a == b      Element-wise comparison

 >>> a < 2        Element-wise comparison 

>>> np.array_equal(a, b)       Array-wise comparison

Aggregation Functions

>>> a.sum()         Array-wise sum 

>>> a.min()            Array-wise minimum value 

>>> b.max(axis=0)        Maximum value of an array row

 >>> b.cumsum(axis=1)       Cumulative sum of the element

s >>> a.mean()   Mean 

>>> b.median()   Median 

>>> a.corrcoef()   Correlation coefficient

 >>> np.std(b)    Standard deviation

Copying Arrays

>>> h = a.view()   Create a view of the array with the same data 

>>> np.copy(a)     Create a copy of the array 

>>> h = a.copy()  Create a deep copy of the array

Sorting Arrays

>>> a.sort()   Sort an array 

>>> c.sort(axis=0)   Sort the elements of an array's axis

Subsetting ,Slicing and Indexing

Subsetting 

>>> a[2]         Select the element at the 2nd index 

 >>> b[1,2]        Select the element at row 0 column 2 (equivalent to b[1][2]) 

 Slicing

 >>> a[0:2]        Select items at index 0 and 1

 >>> b[0:2,1]        Select items at rows 0 and 1 in column 1 

 >>> b[:1]           Select all items at row 0  (equivalent to b[0:1, :]) 

>>> c[1,...]            Same as [1,:,:] 

 >>> a[ : :-1]           Reversed array a 

 Boolean Indexing 

>>> a[a<2]               Select elements from a less than 2 

 Fancy Indexing 

>>> b[[1, 0, 1, 0],[0, 1, 2, 0]]            Select elements (1,0),(0,1),(1,2) and (0,0) 

 >>> b[[1, 0, 1, 0]][:,[0,1,2,0]]           Select a subset of the matrix’s rows

Array Manupulations

Transposing Array

 >>> i = np.transpose(b)         Permute array dimensions

Changing Array Shape

 >>> b.ravel()          Flatten the array

 >>> g.reshape(3,-2)              Reshape, but don’t change data 

 Adding/Removing Elements 

>>> h.resize((2,6))              Return a new array with shape (2,6) 

>>> np.append(h,g)             Append items to an array 

>>> np.insert(a, 1, 5)            Insert items in an array 

>>> np.delete(a,[1])            Delete items from an array

 Combining Arrays 

>>> np.concatenate((a,d),axis=0)        Concatenate arrays 

 >>> np.vstack((a,b))          Stack arrays vertically (row-wise)  

 >>> np.r_[e,f]               Stack arrays vertically (row-wise) 

>>> np.hstack((e,f))        Stack arrays horizontally (column-wise) 

 >>> np.column_stack((a,d))      Create stacked column-wise arrays

 >>> np.c_[a,d]        Create stacked column-wise arrays 

 Splitting Arrays 

>>> np.hsplit(a,3)    Split the array horizontally at the 3rd index 

>>> np.vsplit(c,2)         Split the array vertically at the 2nd index 


Post a Comment

0Comments

Post a Comment (0)