Stack Exchange network consists of 183 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.
Great question and unfortunately not an uncommon situation. One solution outside of data-analysis is to pool data with other institutions, a solution which has its own obstacles.
Unfortunately it's trail-and-error: i set a threshold below which values are turned to 0, then i invert the matrix back, recalculate the correlation matrix and check if the differences are acceptable. This ensures a PD matrix, but finds less conditional independencies than better algorithms. I whish i understood the stability of matrix inversion better, i asked a related question about that: stats.stackexchange.com/questions/145412/…