-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature request: compute a connectivity matrix from all BOLD runs/sessions #176
Comments
Thanks for the suggestion! |
I've thought about taking the average of run-specific matrices myself, too, but I wasn't sure if from the methods standpoint it's equivalent to computing a single matrix from all runs concatenated. But I think if at some point you decided to implement it, it would be interesting to be able to:
If it's not at the top of the agenda, I understand. Just thought I'd leave it here for future reference. |
The original reason that I decide to not implement an group connectome are
If anything along these lines are implemented, I would prefer to have on thing that's useful for more researchers, rather than all possible combinations. Also for averaging vs concatenating, IMHO this is a necessary compromise for efficient computing. The results are not going to be numerically identical, but the similarity is extremely high (see code below). Following is the code to show the the averaging approach and the concatenating approach will create pretty similar results: import numpy as np
time_series = [np.random.rand(100, 444) for _ in range(5)] # time series length of 100, typical for short scans, 444 parcels
connectome_concat = np.corrcoef(np.concatenate(time_series).T)
connectome_average = np.mean([np.corrcoef(ts.T) for ts in time_series], axis=0)
similarity = np.corrcoef(connectome_concat.flatten(), connectome_average.flatten())[0, 1]
assert similarity > 0.99 |
Ok I see, this sounds totally reasonable! Thanks. |
Your idea
For many connectivity analyses it is advised that one maximizes time series length, so one would expect to be able to use all BOLD data to compute a connectivity matrix (e.g., a classic case of a single matrix per subject). Any chance you guys would consider an option to concatenate all runs or sessions before computing a matrix?
The text was updated successfully, but these errors were encountered: