import numpy as np
from scipy.sparse.linalg import svds
ui=ui.astype(float)
u,sigma,vt=svds(ui,k=k)
sigma=np.diag(sigma)
rm=np.dot(np.dot(u,sigma),vt)
return rm
ui=np.array([[5,0,4,3,0],[0,0,5,0,0],[4,0,0,0,3],[0,0,4,4,0],[0,2,0,0,5]])
k=2
rm=svd.recommender(ui,k)
print("rm")
print(rm)
aW1wb3J0IG51bXB5IGFzIG5wCmZyb20gc2NpcHkuc3BhcnNlLmxpbmFsZyBpbXBvcnQgc3Zkcwp1aT11aS5hc3R5cGUoZmxvYXQpCnUsc2lnbWEsdnQ9c3Zkcyh1aSxrPWspCnNpZ21hPW5wLmRpYWcoc2lnbWEpCnJtPW5wLmRvdChucC5kb3QodSxzaWdtYSksdnQpCnJldHVybiBybQp1aT1ucC5hcnJheShbWzUsMCw0LDMsMF0sWzAsMCw1LDAsMF0sWzQsMCwwLDAsM10sWzAsMCw0LDQsMF0sWzAsMiwwLDAsNV1dKQprPTIKcm09c3ZkLnJlY29tbWVuZGVyKHVpLGspCnByaW50KCJybSIpCnByaW50KHJtKQ==