0% found this document useful (0 votes)
14 views

Assignment Solutions

The document contains 7 assignments with multiple questions on numpy concepts like array creation and manipulation, plotting, string operations etc. Code snippets are provided to demonstrate different numpy functions and their usage.

Uploaded by

dhruvgirishnayak
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views

Assignment Solutions

The document contains 7 assignments with multiple questions on numpy concepts like array creation and manipulation, plotting, string operations etc. Code snippets are provided to demonstrate different numpy functions and their usage.

Uploaded by

dhruvgirishnayak
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Assignment 1:

Q1)

import numpy as np

arr_2d = np.array(([9, 5, 5, 7],[3, 4, 3, 4]))


print(np.unique(arr_2d))

Q2)

import numpy as np

arr = np.arange(0,10)
for i in range(len(arr)):
if (arr[i] % 2):
arr[i] = -1
else:
arr[i] = 1
print(arr)

Q3)

import numpy as np

arr = np.arange(0,10)
arr.reshape((5,2))

print(arr)

Q4)

import numpy as np

polynomial = np.poly1d([1,2,-1,5])
roots = polynomial.r
print(roots)
Q5-7)

import numpy as np
import math
import sys

def func(x):
return pow(math.sin(x),2) + 2

angle = -2*math.pi
f_values = np.empty(0)
count = 0

while angle <= 2*math.pi:


count += 1
f_values.resize(count)
f_values[-1] = func(angle)
angle += math.pi/4

print("Question 5:")
print(f_values)

print("\nQuestion 6:")
total = 0
for i in f_values:
print(f"{i}: {sys.getsizeof(i)}B")
total += sys.getsizeof(i)

print(f"Total size: {total}B")

print("\nQuestion 7:")
print(f_values[3:7])

Assignment 2:

Q1)
import numpy as np

arr_3x3 = np.empty((3,3))
for i in range(3):
for j in range(3):
arr_3x3[i][j] = 3*i+j

print(arr_3x3)

# swap by bitwise method

mod1 = np.array(arr_3x3)
for i in range(3):
mod1[i][0] = int(mod1[i][0])^int(mod1[i][1])
mod1[i][1] = int(mod1[i][0])^int(mod1[i][1])
mod1[i][0] = int(mod1[i][0])^int(mod1[i][1])

print("\n",mod1)

del mod1
mod2 = np.array(arr_3x3)

for j in range(3//2):
for i in range(3):
mod2[i][j] = int(mod2[i][j])^int(mod2[i][2-j])
mod2[i][2-j] = int(mod2[i][j])^int(mod2[i][2-j])
mod2[i][j] = int(mod2[i][j])^int(mod2[i][2-j])

print("\n",mod2)

del mod2
mod3 = np.array(arr_3x3)

for j in range(3//2):
for i in range(3):
mod3[j][i] = int(mod3[j][i])^int(mod3[2-j][i])
mod3[2-j][i] = int(mod3[j][i])^int(mod3[2-j][i])
mod3[j][i] = int(mod3[j][i])^int(mod3[2-j][i])

print("\n",mod3)
Q2)

import random
import numpy as np

arr = np.empty((5,3))

for i in range(5):
for j in range(3):
arr[i][j] = round(2+6*random.random(),3)

print(arr)

Q3)

import random
import math
import numpy as np

numbers = np.arange(1,16)
arr = np.array(random.choices(numbers,k=8),dtype=np.float_)

print(arr)
print("Mean:", np.mean(arr))
print("Median:",np.median(arr))
print("Standard Deviation:",np.std(arr))

minimum = min(arr)
maximum = max(arr)
print(minimum,maximum)
for i in range(len(arr)):
arr[i] = float((arr[i]-minimum))/(maximum-minimum)

print("Normalized array:",arr)

Q4)

import numpy as np
import random

arr = np.empty((8,3))
arr[0][0] = random.choice(range(10,35))
for i in range(8):
for j in range(3):
if (i,j) != (0,0):
rand = random.choice([-1,1])
if arr[((3*i+j)-1)//3][(3*i+j)-1-3*(((3*i+j)-1)//3)]+rand in range(10,35):
arr[i][j] = arr[((3*i+j)-1)//3][(3*i+j)-1-3*(((3*i+j)-1)//3)]+rand
else:
arr[i][j] = arr[((3*i+j)-1)//3][(3*i+j)-1-3*(((3*i+j)-1)//3)]-rand

print("Original matrix:")
print(arr)
print("\nSub-matrices:")
print(np.array(np.split(arr,4)))
print("\nSorting by second row:")
print(arr.T[arr.T[:,1].argsort()].T)
print("\nSorting by second column:")
print(arr[arr[:,1].argsort()])
print("\nReplacing the elements of the second column by 10:")
arr1 = np.copy(arr).T
arr1[1] = np.ones(np.shape(arr1[1]))*10
print(arr1.T)
Q5)

import numpy as np
x = 60
x = np.deg2rad(x)
print("x in rad:",x)
print("sin x:",np.sin(x))
print("cos x:",np.cos(x))
print("tan x:",np.tan(x))
print("sinh x:",np.sinh(x))
print("cosh x:",np.cosh(x))
print("tanh x:",np.tanh(x))

Q6)

string = "python programming lab session"

print(string.upper(),"\n")
for i in string.split():
print(i)
print("\n",string.capitalize())

Q7)

import matplotlib.pyplot as plt


import numpy as np

month_numbers = np.arange(1,12)
total_profits =
np.array([211000,183300,224700,222700,209600,201400,295500,361400,234000,266700,412800])
plt.plot(month_numbers,total_profits,'o:r',ms=10,mfc='green')
plt.xticks(np.arange(1,12,1))
plt.xlabel("Month Number")

plt.ylabel("Total Profit")
plt.show()
Q1)

import numpy as np

arr_3x3 = np.empty((3,3))
for i in range(3):

You might also like