3dLME and on-the-fly datasets

Dear Colleagues,

Hi. Can 3dLME accept on-the-fly/runtime-generated datasets? If not, it would be nice if it could.

This code


3dLME \
    -prefix output_lme_ranslp_hip_procbasic.nii \
    -jobs 8 \
    -model 'cond*AAT' \
    -qVars AAT \
    -ranEff '~1+AAT' \
    -SS_type 3 \
    -num_glt 1 \
    -logLik \
    -gltLabel 1 'AATeff' \
    -gltCode  1 'AAT : ' \
    -dataTable \
    Subj        cond    AAT     InputFile \
    s00003      aro1    70      ../20160713_2255_hip_procbasic.results/stats.20160713_2255_hip_procbasic.nii[3] \
    s00003      aro2    25      ../20160713_2326_hip_procbasic.results/stats.20160713_2326_hip_procbasic.nii[3] \
    s00003      aro3    35      ../20160714_0004_hip_procbasic.results/stats.20160714_0004_hip_procbasic.nii[3] \
    s00003      aro4    40      ../20160714_0040_hip_procbasic.results/stats.20160714_0040_hip_procbasic.nii[3] \
    s00003      aro5    70      ../20160714_0220_hip_procbasic.results/stats.20160714_0220_hip_procbasic.nii[3] \
    s00105      aro1    45      ../20170412_2304_hip_procbasic.results/stats.20170412_2304_hip_procbasic.nii[3] \
    s00105      aro2    20      ../20170413_0112_hip_procbasic.results/stats.20170413_0112_hip_procbasic.nii[3] \
    s00105      aro3    15      ../20170413_0303_hip_procbasic.results/stats.20170413_0303_hip_procbasic.nii[3] \
    s00105      aro4    35      ../20170413_0406_hip_procbasic.results/stats.20170413_0406_hip_procbasic.nii[3] \
    s00105      aro5    0       ../20170413_0535_hip_procbasic.results/stats.20170413_0535_hip_procbasic.nii[3]

and this code


3dinfo -subbrick_info "3dcalc( -a ../../20170223_0434_pcc_procbasic_ric_rvt_ppga.results/stats.20170223_0434_pcc_procbasic_ric_rvt_ppga.nii[3] -expr (log((1+sqrt(a))/(1-sqrt(a))))/2 )"

works, but this code


3dLME \
    -prefix output_lme_ranslp_hip_procbasic.nii \
    -jobs 8 \
    -model 'cond*AAT' \
    -qVars AAT \
    -ranEff '~1+AAT' \
    -SS_type 3 \
    -num_glt 1 \
    -logLik \
    -gltLabel 1 'AATeff' \
    -gltCode  1 'AAT : ' \
    -dataTable \
    Subj        cond    AAT     InputFile \
    s00003      aro1    70      "3dcalc( -a ../20160713_2255_hip_procbasic.results/stats.20160713_2255_hip_procbasic.nii[3] -expr (log((1+sqrt(a))/(1-sqrt(a))))/2 )" \
    s00003      aro2    25      "3dcalc( -a ../20160713_2326_hip_procbasic.results/stats.20160713_2326_hip_procbasic.nii[3] -expr (log((1+sqrt(a))/(1-sqrt(a))))/2 )" \
    s00003      aro3    35      "3dcalc( -a ../20160714_0004_hip_procbasic.results/stats.20160714_0004_hip_procbasic.nii[3] -expr (log((1+sqrt(a))/(1-sqrt(a))))/2 )" \
    s00003      aro4    40      "3dcalc( -a ../20160714_0040_hip_procbasic.results/stats.20160714_0040_hip_procbasic.nii[3] -expr (log((1+sqrt(a))/(1-sqrt(a))))/2 )" \
    s00003      aro5    70      "3dcalc( -a ../20160714_0220_hip_procbasic.results/stats.20160714_0220_hip_procbasic.nii[3] -expr (log((1+sqrt(a))/(1-sqrt(a))))/2 )" \
    s00105      aro1    45      "3dcalc( -a ../20170412_2304_hip_procbasic.results/stats.20170412_2304_hip_procbasic.nii[3] -expr (log((1+sqrt(a))/(1-sqrt(a))))/2 )" \
    s00105      aro2    20      "3dcalc( -a ../20170413_0112_hip_procbasic.results/stats.20170413_0112_hip_procbasic.nii[3] -expr (log((1+sqrt(a))/(1-sqrt(a))))/2 )" \
    s00105      aro3    15      "3dcalc( -a ../20170413_0303_hip_procbasic.results/stats.20170413_0303_hip_procbasic.nii[3] -expr (log((1+sqrt(a))/(1-sqrt(a))))/2 )" \
    s00105      aro4    35      "3dcalc( -a ../20170413_0406_hip_procbasic.results/stats.20170413_0406_hip_procbasic.nii[3] -expr (log((1+sqrt(a))/(1-sqrt(a))))/2 )" \
    s00105      aro5    0       "3dcalc( -a ../20170413_0535_hip_procbasic.results/stats.20170413_0535_hip_procbasic.nii[3] -expr (log((1+sqrt(a))/(1-sqrt(a))))/2 )"

gives a


set: Variable name must begin with a letter.

error. The first 3dLME command was obtained by copying and pasting the second 3dLME command and making no changes other than deleting


"3dcalc( -a 

and


 -expr (log((1+sqrt(a))/(1-sqrt(a))))/2 )"

from each line, so I am guessing that I do not have a syntax problem.

Sincerely,

Dante

Dante, 3dLME treats those strings under the column “InputFile” as filenames. No mechanism is implemented as command lines.

1 Like

Okay.