CUR Decomposition
CUR Decomposition as described in Mining of Massive Datasets, page 406.
Currently it only works with Numpy arrays but the point of CUR is to keep C and R sparse if M is sparse so I plan to add support for Scipy Sparse arrays.
Usage
M = np.array([ ... ])
r = int
from cur import cur_decomposition
C, U, R = cur_decomposition(M, r)