Thanks for the response. Yes, in that situation a solution of x = 1 would be 
just as good as x = 1000 or any other value of x for me (but in my problem the 
matrix has nonzero rank, so I can't just randomly choose a vector and have it 
be a solution). If it helps, what I'm interested in is the R equivalent of 
x = A\b
in MATLAB, for these particular kinds of A matrices. I looked into irlba, and 
it seems to be able to calculate some of the singular values/vectors for the 
large dataset without taking too much time. I'll look more into seeing how I 
can solve the system with it. 

    On Wednesday, April 20, 2016 11:01 AM, Jeff Newmiller 
<jdnew...@dcn.davis.ca.us> wrote:
 

 This is kind of like asking for a solution to x+1=x+1. Go back to linear 
algebra and look up Singular Value Decomposition, and decide if you really want 
to proceed. See also ?svd and package irlba.
-- 
Sent from my phone. Please excuse my brevity.

On April 20, 2016 4:22:34 AM PDT, A A via R-help <r-help@r-project.org> wrote:



 I have a situation in R where I would like to find any x (if one exists) that 
solves the linear system of equations Ax = b, where A is square, sparse, and 
singular, and b is a vector. Here is some code that mimics my issue with a 
relatively simple A and b, along with three other methods of solving this 
system that I found online, two of which give me an error and one of which 
succeeds on the simplified problem, but fails on my data set(attached). Is 
there a solver in R that I can use in order to get x without any errors given 
the structure of A? Thanks for your time.
#CODE STARTS HEREA = 
as(matrix(c(1.5,-1.5,0,-1.5,2.5,-1,0,-1,1),nrow=3,ncol=3),"sparseMatrix")b = 
matrix(c(-30,40,-10),nrow=3,ncol=1)
#solve for x, Error in LU.dgC(a) : cs_lu(A) failed: near-singular A (or out of 
memory)solve(A,b,sparse=TRUE,tol=.Machine$double.eps)
#one x that happens to solve Ax = bx = matrix(c(-10,10,0),nrow=3,ncol=1)A %*% x
#Error in
lsfit(A, b) : only 3 cases, but 4 variableslsfit(A,b)#solves the system, but 
fails belowsolve(qr(A, LAPACK=TRUE),b)#Error in qr.solve(A, b) : singular 
matrix 'a' in solveqr.solve(A,b)
#matrices used in my actual problem (see attached files)A = readMM("A.txt")b = 
readMM("b.txt")
#Error in as(x, "matrix")[i, , drop = drop] : subscript out of 
boundssolve(qr(A, LAPACK=TRUE),b)


R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


  
        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to