Should the SPARSE function get a mention here? If you are worried about having zeros, then a quantity could be added to R beforehand to make it all positive and then the same amount taken it away form the first column of S afterwards.