Xpc_abcd to denoise data; error: the following arguments are required: analysis_level


I would like to denoise my fmri data (intend to do conn analyses). I preprocessed them with fmriprep and want to implement the 24P + acompcor denoising options using the xcp_abcd tool.

I try:

singularity --verbose run -B /storage/ /usr/local/bin/xcp_abcd-0.0.8.simg $input_dir $out_dir participant \
--participant_label $subj \
-w $workdir \
-t itemobject \
--smoothing 4 \
-p acompcor \

However, I get this error (see bottom line):

usage: xcp_abcd [-h] [–version]
[-t TASK_ID] [-s] [–nthreads NTHREADS]
[–omp-nthreads OMP_NTHREADS] [–mem_gb MEM_GB]
[–use-plugin USE_PLUGIN] [-v] [–input-type INPUT_TYPE]
[–brain-template BRAIN_TEMPLATE] [–smoothing SMOOTHING]
[-d DUMMYTIME] [–lower-bpf LOWER_BPF] [–upper-bpf UPPER_BPF]
[–bpf-order BPF_ORDER] [–motion-filter-type {lp,notch}]
[–band-stop-min BAND_STOP_MIN]
[–band-stop-max BAND_STOP_MAX]
[–motion-filter-order MOTION_FILTER_ORDER] [-r HEAD_RADIUS]
[-f FD_THRESH] [–contigvol CONTIGVOL] [-w WORK_DIR]
[–clean-workdir] [–resource-monitor] [–notrack]
fmriprep_dir output_dir {participant}
**p_abcd: error: the following arguments are required: analysis_level**

My goal is to use both acompocor+24P. Did I get right that it should be as follow?

-p {24P,acompcor}

For now I omit this part. However, I tried using 24P (only, or both 24P+acompcor) as well as omitting the “participant” argument, or placing it in {} e.g. {participant}, but nothing has worked so far.

Any help please here?

Thank you a lot in advance :slight_smile: ,


I think only one pipeline can be used at a time. Also, see https://github.com/PennLINC/xcp_abcd/issues/267

1 Like

It’s not clear from the xcp_abcd usage page, whether I can include both.

Is it the case that by using acompcor only 10 regressors (5 for WM 5 for CSF) are inserted? That;s my impression, since Motion alignment regressors are also to be added. The papers that the xcp_abcd cites in their documentation (see Ciric et al. 2017) use among other a 24P or 36P+acompcor approach. Weird.

However, the code I try above is using only ‘p- acompcor’ (since I wasn’t sure it can get two arguments). Still that doesnt work. As you say it could be the fmriprep newer version problem? No idea here.

As it also says in the Github issue, you need to use the latest unstable docker image to use acompcor.

Yes acompcor by default uses 5 WM an 5 CSF components. Which version fmriprep did you use? You can see how the components are labeled in your confounds tsv file. If acompcor components are labeled as “acompcor_XX” as opposed to “c_comp_corXX” and “w_comp_corXX”, then you are using the older naming convention from fmriprep which should work with XCP ABCD. The new naming convention that splits the renames components into their compartments is not currently supported unfortunately, but I imagine that should be a high priority fix with them.