Non-square matrix inverse
9 views (last 30 days)
Show older comments
I have a set of data, where x is a 8*100 matrix. I convert it into xyz coordinates by multiplying with a transformation vector t (3*8), so that:
B = t*x, resulting in B which is a 3*100 matrix.
I am trying to figure out a way to go from B back to x.
I have tried to do x = pinv(t) * B, but the values were significantly off.
Would appreciate any help!
1 Comment
Matt J
on 1 Dec 2023
I have tried to do x = pinv(t) * B, but the values were significantly off.
That's the best you are going to be able to do.
Answers (1)
John D'Errico
on 1 Dec 2023
You CANNOT do so. That is, you cannot learn the original values. You cannot go backwards. A simple example is:
Choose any two numbers. Call them x and y. I'll pick them for you as an example:
x = rand
y = rand
Having done so, add them together.
z = x + y
Now, knowing ONLY the value of z, and the fact that you added x and y together to get z, can you now infer the original values of x and y? OF COURSE NOT!
x and y could be ANY numbers that added together, yield 0.8814.
0 Comments
See Also
Categories
Find more on Time Series Objects in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!