class_docstr: Simple implementation of "Exact Matrix Completion via Convex Optimization"
  by Emmanuel Candes and Benjamin Recht using cvxpy.
code: def solve(self, X, missing_mask):
      X = check_array(X, force_all_finite=False)
  
      m, n = X.shape
      S, objective = self._create_objective(m, n)
      constraints = self._constraints(
          X=X,
          missing_mask=missing_mask,
          S=S,
          error_tolerance=self.error_tolerance,
      )
      problem = cvxpy.Problem(objective, constraints)
      problem.solve(
          verbose=self.verbose,
          solver=cvxpy.CVXOPT,
          max_iters=self.max_iters,
          # use_indirect, see: https://github.com/cvxgrp/cvxpy/issues/547
          use_indirect=False,
      )
      return S.value
  
file_path: fancyimpute/fancyimpute/nuclear_norm_minimization.py
imports: import cvxpy
  from .solver import Solver
  from sklearn.utils import check_array
label_desc: Use image node_id 4 for calling the NuclearNormMinimization obj's underlying member method code with example usage: obj.solve(X, missing_mask) and returns: S