Implement dot in our class of sparse matrices represented with a dictionary of dictionaries. def SparseMatrix7(m=None,**kwargs): import itertools import numpy as np def add_to_dict(d, key1, key2, val): <... YOUR CODE HERE ...> class SparseMatrix7_class: def __init__(self, m=m. **kwargs): <... YOUR CODE HERE ...> def to_dense(self): <... YOUR CODE HERE ...> def __getitem__(self, pos): <... YOUR CODE HERE ...> def __setitem__(self, pos, val): <... YOUR CODE HERE ...> def __add__ (self, q): <... YOUR CODE HERE ...> def dot(self, q): r = self.__class__(m=None) <... YOUR CODE HERE ...> return r def sparseness_metric(self): <... YOUR CODE HERE ...> def T(self): <... YOUR CODE HERE ...> return SparseMatrix7_class(**kwargs) check your code manually: import numpy as np m1 = np.random.randint(10, size=(3,2)) print (m1) m2 = np.random.randint(10, size=(2,3)) print (m2) print ("-- ") print (m1.dot(m2)) s1 = SparseMatrix7(m1) s2 = SparseMatrix7(m2) print (s1.dot(s2).to_dense().astype(int)) print ("--") print (m2.dot(m1)) print (s2.dot(s1).to_dense().astype(int))
Implement dot in our class of sparse matrices represented with a dictionary of dictionaries.
def SparseMatrix7(m=None,**kwargs):
import itertools
import numpy as np
def add_to_dict(d, key1, key2, val):
<... YOUR CODE HERE ...>
class SparseMatrix7_class:
def __init__(self, m=m. **kwargs):
<... YOUR CODE HERE ...>
def to_dense(self):
<... YOUR CODE HERE ...>
def __getitem__(self, pos):
<... YOUR CODE HERE ...>
def __setitem__(self, pos, val):
<... YOUR CODE HERE ...>
def __add__ (self, q):
<... YOUR CODE HERE ...>
def dot(self, q):
r = self.__class__(m=None)
<... YOUR CODE HERE ...>
return r
def sparseness_metric(self):
<... YOUR CODE HERE ...>
def T(self):
<... YOUR CODE HERE ...>
return SparseMatrix7_class(**kwargs)
check your code manually:
import numpy as np
m1 = np.random.randint(10, size=(3,2))
print (m1)
m2 = np.random.randint(10, size=(2,3))
print (m2)
print ("-- ")
print (m1.dot(m2))
s1 = SparseMatrix7(m1)
s2 = SparseMatrix7(m2)
print (s1.dot(s2).to_dense().astype(int))
print ("--")
print (m2.dot(m1))
print (s2.dot(s1).to_dense().astype(int))
Step by step
Solved in 4 steps with 4 images