-
Notifications
You must be signed in to change notification settings - Fork 590
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
Integration of load_confounds
to nilearn
#2777
Comments
Thx for the suggestion ! Note however that changes breaking the API will have two wait for two release cycles ! Also, we may have to adapt the terminology slightly. Are you taking part to the coding sprint this week ? |
Yes I have signed up to the sprint! Happy to discuss more. |
You should have gotten an email this evening; let us know if not. Details about the accessing the Discord server are also on the event website ! |
quick note: if this integration moves forward, this will solve several old standing issues
|
Thanks @pbellec for pining the existing issues - happy to discuss what should we prioritise to move this project forward. |
There will be a group discussion on this tomorrow at 3p UTC [find your local time here] as part of the Nilearn-Nibabel Dev Days ! For more information and to join, see #2739. |
Summary of discussions from Nilearn-Nibabel Dev Days 2021Thanks everyone for the extremely helpful discussion today! To start the integration, we will resolve some standing issues in the existing nilearn code base.
Integrating
Things for future discussion:
Action plan
Please feel free to comment and add anything that I missed in the summary 🙌 |
Thx ! The summary and the discussion have been great. |
That's a really important point - and thanks for bringing up the error-prone part! |
thanks a lot for the summary @htwangtw and the useful feedback @bthirion (and others who commented during the sprint). Reflecting on the summary, I am thinking it may be worth:
When both of these sets of issues are addressed, we could work on an extension of |
I really like this idea - the current version of |
Linking this issue on Now that #2821 is merged, I think we can move to the next step. It would certainly be easier to break the integration into several small PRs rather than doing a very large one. (pinging @htwangtw since I think you are currently working on this). @pbellec I agree that we need to acknowledge all contributors who worked on |
Thanks for the heads up! I am wondering if it's possible to do the same thing as in #2299 #2298 for To break down the integration, we can separate the base class Key remaining changes are related to The strategies and relevant docs should be revised based on the discussion we had with the community during the dev days. This is more or less a stand-alone task if we base |
Hi @htwangtw I was wondering if you were still working on this or if there was something blocking at the moment? |
Thanks for checking in! On the |
@htwangtw Cool to hear that things are moving forward on the
I don't have anything particular in mind, I was just checking in. Let's wait for your work on |
@NicolasGensollen Things moves fast and I think the code base is ready for the migration! |
@htwangtw Awesome ! 💯 |
And then the predefined strategies ( |
Just a heads up - I am using the functions defined in PR #2946 to draft how the strategy can be implemented. I came up with two possible ways and happy to discuss them at the next office hour |
Looking fw to it, thx. |
The
load_confounds
team would like to seeload_confounds
added tonilearn
! Link to the repositoryload_confounds
is a small tool to load fMRIprep confound timeseries based on methods benchmarked in Ciric et. al., 2017. The output can be passed toNiftiMasker
and related functions directly.It's a bit small to be a stand-alone project, and the integration will help more users!
Benefits to the change
load_confounds
is a great addition to nilearn for the following reasons that I can think of:Bridging
fMRIprep
outputs and nilearn analysis functions:We want to make the confound selection strategy more streamlined and reduce possible errors introduced at this stage. I am very certain there are many people who loaded the full fMRIprep confound output file as the confound regressors.
load_confounds
would be a helpful addition to that and the existing function that handles confound variables. There's already precedence of the new GLM with fMRIprep/BIDS specific supports.load_confounds
can smoothen the process.Almost completed project with good code quality:
The integration will not be a lot of work.
load_confounds
is almost a finished product with good code quality. There's one more strategy to be added on theload_confounds
side. Some changes inNifitMasker
and GLM first-level analysis can make the integration work smoother. The changes will allow volume censoring performed correctly.sample_mask
to thetransform
method rather than at the initialisation stage. This will allow scrubbing outliers per image, along with non-steady-state volumes.sample_mask
to first level GLM for removing non-steady-state volumes and scrubbing motion outliers.Pseudocode for the new behavior, if applicable
This is what I expect to see when
load_confounds
is merged intonilearn
, usingNiftiMasker
as an example:It would be great to know what the nilearn contributors think! Any feedback would be extremely helpful!
cc'd @pbellec
The text was updated successfully, but these errors were encountered: