I imagine this is a very basic question, but I am having a real problem finding the answer. I think the big issue is I don't know the proper vocabulary to express my question in mathematically, so my searches just aren't turning up the right kinds of results.
Anyway, say I have an arbitrarily large number of points in space (I have upwards of 20,000 in my data set). I know the distances or path lengths between some of them, but not all of them. How do I go about using the known path lengths to calculate the unknowns?
I know how to do this by hand with a small number of points. That's easy. But there must be some sort of method for determining this based on very very large data sets?
So, to make my example more clear, say I have this matrix of values. Each value is the distance between the point indicated by the row and the point indicated by the column. Blank cells indicate that the distance for those points is unknown.
A B C D A 0 5 10 7 B 5 0 2 C 10 0 D 7 2 0
So, in this simplified case, we have four points. A, B, C, and D. We know the distances between A and B, A and C, A and D, and B and D. We do not know the distances between B and C or between C and D.
What sort of method would solve for those values?
We don't even necessarily know the dimensionality of these points - it could be in 2, 3, or more dimensions. I imagine the degree of dimensionality will change the calculations required, however.
In our situation we are actually working with a dissimilarity matrix. So the "distance" is actual just the difference between dissimilarity scores between the stimuli specified by the row and that specified by the column. In our case, the dissimilarity "scores" are determined by examining neuronal activity patterns. So, the "distance" represents the degree of difference between these firing patterns.
That is our specific data set. However, I am interested in this technique for a variety of reasons not limited to analysis of this particular data set. So even if you think this is not an appropriate method for our data, I am still interested in figuring out how to do it, assuming Cartesian distance.