2 1
2 1
def multiply_loops(A,B):
C=np.zeros((A.shape[0],B.shape[1])) for i
in range(A.shape[1]):
for j in range(B.shape[0]):
C[i,j]=A[i,j]*B[j,i]
return C
[[ 5. 14.]
[18. 32.]]
def multiply_vector(A,B):
return A@B
[[0.9512867 0.76109669]
[0.53666836 0.89837683]]
%timeit multiply_loops(A,B)
4.44 µs ± 112 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)
print(np.random.randint(5)) print(np.random.rand(5))
print(np.random.randn(5))
4
[0.37631939 0.23752442 0.89203489 0.85175693 0.91339398]
[ 1.53085868 -0.25168637 1.71983828 -0.40483133 -0.94126992]
sample_list=[1,2,3] list_array2=np.array(sample_list)
print(list_array2)
[1 2 3]
[1 2 3]
[1 2 3]
[1, 2, 3]
my_tup_array=np.array([1,2,3,4,5,6,7,8,9,10])
my_array=np.insert(my_array,3,14) print("after insertion",my_array)
my_array=np.append(my_array,11) print("after
appending",my_array) my_array=np.delete(my_array,3) print("after
deletion",my_array,3) my_array1=np.array([12,13,14])
my_array=np.concatenate((my_array,my_array1)) print("after
concatenation",my_array)
NameError Traceback (
call last)
<ipython-input-1-5854d342d6ee> in <cell line: 1>()
----> 1 my_tup_array=np.array([1,2,3,4,5,6,7,8,9,10])
2 my_array=np.insert(my_array,3,14)
3 print("after insertion",my_array) 4 my_array=np.append(my_array,11) 5
print("after appending",my_array)
my_spaced_array=np.linspace(0,5/3,6) print(my_spaced_array)
print(my_spaced_array.max()) print(my_spaced_array.min())
print(my_spaced_array.argmax()) print(my_spaced_array.argmin())
print(my_spaced_array.size)
[0. 0.33333333 0.66666667 1. 1.33333333 1.66666667]
1.6666666666666667
0.0 5
0
6
my_array=np.zeros(10) print(my_array)
my_array=np.ones(10) print(my_array)
my_array=np.ones(10)*5 print(my_array)
[0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
[1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]
[5. 5. 5. 5. 5. 5. 5. 5. 5. 5.]
arr=np.array([1,2,3,4]) print(arr[0]) 1
arr=np.array([1,2,3,4]) print(arr[2]+arr[3]) 7
my_orig_arr2=np.array([2,9,17,13,1,4,20,57])
my_orig_arr2[2:5]=-6 print(my_orig_arr2)
[ 2 9 -6 -6 -6 4 20 57]
my_orig_arr=np.array([1,15,3,9,26,7,89,12])
my_rev_arr=my_orig_arr[ : :-1] print(my_rev_arr)
[12 89 7 26 9 3 15 1]
my_rand_array=np.random.rand(3,4) print(my_rand_array)
tup_dim=(3,4) my_uninitialised_array=np.empty(tup_dim)
print(my_rand_array)
my_second_arr=np.array([0,1,2,3,4,5,6,7,8])
my_updated_arr=my_second_arr.reshape(-1,3)
print(my_updated_arr) print(my_second_arr)
[[1 2 3 4]
[5 6 7 8]]
[1 2 3 4 5 6 7 8]
[[0 1 2]
[3 4 5]
[6 7 8]]
[0 1 2 3 4 5 6 7 8]
A_arr = np.array([[5,9],[4,7]])
B_arr = np.array([[2,8],[1,6]]) M_arr = A_arr *
B_arr print(M_arr)
C_arr = np.array([[5,9],[4,7]])
D_arr = np.array([[2,8],[1,6]]) P_arr =
np.dot(C_arr,D_arr) print(P_arr)
[[10 72]
[ 4 42]] [[19 94]
[15 74]]
R_div = np.array([[25,65],[40,14]])
S_div = np.array([[2,10],[4,5]]) T_div = R_div / S_div
print(T_div)
R_int_div = np.array([[25,65],[40,70]])
S_int_div = np.array([[2,10],[8,3]]) T_int_div = R_int_div //
S_int_div print(T_int_div)
R_mod = np.array([[20,65],[40,70]])
S_mod = np.array([[2,10],[8,3]]) T_mod = R_mod
% S_mod print(T_mod)
[[12.5 6.5]
[10. 2.8]]
[[12 6]
[ 5 23]]
[[0 5]
[0 1]]
R_exp = np.array([[4,2],[3,4]])
S_exp = np.array([[2,10],[4,5]]) T_exp = R_exp ** S_exp
print(T_exp)
[[ 16 1024]
[ 81 1024]]
X_stat = np.array([[1,2,3],[4,-5,6]p])rint("mean =
",X_stat.mean()) print("Variance = ",X_stat.var()) print("Standard
Deviation = ",X_stat.std()) print("min =",X_stat.min()) print("max
=",X_stat.maxp()r)int("sum=",X_stat.sump()r)int("produc=t
",X_stat.prod())X = np.array([9,16,27p])rint(np.sqrt(X))
print(np.log(X)m) ean = 1.83333333333333V3a3riance=
11.805555555555557 Standard Deviation = 3.435921354681384
min = -5 max = 6 sum = 11 product = -720
[3. 4. 5.19615242]
[2.19722458 2.77258872 3.29583687]
Z = np.arange(18).reshape(2,3,3) print(Z)
print(Z.sum(axis=2))
[[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]]
[[ 9 10 11]
[12 13 14]
[15 16 17]]]
[[ 3 12 21]
[30 39 48]]
N = np.arange(6).reshape(3,2) print(N)
print("Transpose = ",N.T)
[[0 1]
[2 3]
[4 5]]
Transpose = [[0 2 4]
[1 3 5]]