How to use "afni_proc.py -ricor" without respiratory data (only heart rate data)?

Summary of what happened:

I want to correct fMRI data using “afni_proc.py -ricor” only with cardiac data, but I could not do it because respiratory data is required when creating regression data in “RetroTS.py” (I checked the code, and it does not work unless both data are entered). I have confirmed that it works correctly when both cardiac and respiratory data are used.

Is it possible to correct fMRI data using only cardiac data by rewriting “RetroTS.py” or ****.proc output by “afni_proc.py”? Also, please let me know if there is a method using “3dretroicor”, etc.

Thank you in advance.

Command used (and if a helper script was used, a link to the helper script or the command generated):

RetroTS.py

RetroTS.py \
    -r ${loadDir}/${loadPrefix}_respiratory.dat		\
    -c ${loadDir}/${loadPrefix}_pulseoxy.dat 		\
    -p ${samplingRate} 								\
    -n ${nSlices}									\
    -v ${TR} 										\
    -prefix ${saveDir}/${savePrefix}				\
    -slice_order Custom 							\
    -slice_offset "${sliceTime}"

afni_proc.py (not only -ricor option)

afni_proc.py \
    -subj_id ${subj_ID_1} \
    -out_dir ${result_dir} \
    -script ${script_dir}/${subj_ID_1}_${base_name}.proc \
    -scr_overwrite \
    -blocks despike ricor align volreg \
    -align_opts_aea -cost lpa+ZZ -giant_move  \
    -volreg_align_to MIN_OUTLIER \
    -copy_anat ${anat_data} \
    -tcat_remove_first_trs ${disVols} \
    -ricor_regs_nfirst ${disVols} \
    -ricor_regs ${ricor_data_1} ${ricor_data_2} ${ricor_data_3} \
    -ricor_regress_method across-runs \
    -anat_has_skull no \
    -dsets ${func_data_1} ${func_data_2} ${func_data_3} \
    -volreg_compute_tsnr yes \
    -html_review_style pythonic

Version:

Version AFNI_22.2.04 ‘Marcus Aurelius’

Environment (Docker, Singularity, custom installation):

Data formatted according to a validatable standard? Please provide the output of the validator:

Relevant log outputs (up to 20 lines):

Screenshots / relevant information:

I believe one can run RetroTS.py (which we are working on replacing) without respiratory data. But strangely, if there is no -r option applied in RetroTS.py, then it basically requires adding:
-respiration_out 0 -rvt_out 0

Sorry for the confusion. Hopefully that program will be replaced soon.

  • rick
1 Like

Thank you for your response.
I tried the solution you provided and it worked perfectly!

Koizumi