3dANOVA3

Dear AFNI experts,

I am looking for some advice to modeling the ANOVA (i.e. 3dANOVA3) in appropriate way.
(Before starting… I’m just a beginner in AFNI… so there could be many mistakes, issues, etc. on understanding of the function…)
In short, there are three factors in my data: factor1[fixed] - types (E, S) / factor2[fixed] - conditions (A, S) / factor3[random] - subjects (total 5; s01 ~ 05)

…factor1 types (E, S)
…factor2… …EA (s01 ~ 05)…
conditions ----------------------------
…(A, S)… …RA (s01 ~ 05)…

The things that I wanted to measure are, 1) main-effect of type, 2) main-effect of condition, and 3) interaction between type and condition.
Thus, I thought that I need to use 3dANOVA3, and the below is the one which I wrote to use.

3dANOVA3 -type 4
-alevels 2
-blevels 2
-clevels 5
-dset 1 1 1 EA_s01+tlrc \ -dset 1 2 1 ES_s01+tlrc
-dset 1 1 2 EA_s02+tlrc \ -dset 1 2 2 ES_s02+tlrc
-dset 1 1 3 EA_s03+tlrc \ -dset 1 2 3 ES_s03+tlrc
-dset 1 1 4 EA_s04+tlrc \ -dset 1 2 4 ES_s04+tlrc
-dset 1 1 5 EA_s05+tlrc \ -dset 1 2 5 ES_s05+tlrc
-dset 2 1 1 RA_s01+tlrc \ -dset 2 2 1 RS_s01+tlrc
-dset 2 1 2 RA_s02+tlrc \ -dset 2 2 2 RS_s02+tlrc
-dset 2 1 3 RA_s03+tlrc \ -dset 2 2 3 RS_s03+tlrc
-dset 2 1 4 RA_s04+tlrc \ -dset 2 2 4 RS_s04+tlrc
-dset 2 1 5 RA_s05+tlrc \ -dset 2 2 5 RS_s05+tlrc
-fa types
-fb conditions
-fab types_cond_interact
-adiff 1 2 EvsR
-bdiff 1 2 AvsS
-aBcontr 1 -1 : 1 EvsR_A
-aBcontr 1 -1 : 2 EvsR_S
-Abcontr 1 : 1 -1 AvsS_E
-Abcontr 2 : 1 -1 AvsS_R
-bucket donut_anova

However, I’m not sure, that it is correct to use.
Also, when I tried to find other methods, I could find ‘3dMEMA’, but still… I’m not sure which function is correct to use.

Thus, may I ask you,

  1. whether the code is correct to use, relating to the point that I wanted to find.
  2. whether it is correct function to use (is there any other options?).

Your advices will be appreciated.
Thank you.

The 3dANOVA3 script looks fine to me. However, if you only have 5 subjects, you have power issue.

Dear Gang,

Thank you for the comments.
Actually, there are 20 subjects in my data, and I tried to conduct the 3dANOVA3.
However, I had an issue in the “-bucket”, and below is the script which I used.

[Script]

set dirA = /path/to/anova/data

3dANOVA3 -type 4
-alevels 2
-blevels 2
-clevels 20
-dset 1 1 1 “$dirA/stats.s10_E_A_REML+tlrc[31]”
-dset 1 2 1 “$dirA/stats.s10_E_S_REML+tlrc[31]”
-dset 1 1 2 “$dirA/stats.s11_E_A_REML+tlrc[31]”
-dset 1 2 2 “$dirA/stats.s11_E_S_REML+tlrc[31]”
-dset 1 1 3 “$dirA/stats.s12_E_A_REML+tlrc[31]”
-dset 1 2 3 “$dirA/stats.s12_E_S_REML+tlrc[31]”
-dset 1 1 4 “$dirA/stats.s13_E_A_REML+tlrc[31]”
-dset 1 2 4 “$dirA/stats.s13_E_S_REML+tlrc[31]”
-dset 1 1 5 “$dirA/stats.s15_E_A_REML+tlrc[31]”
-dset 1 2 5 “$dirA/stats.s15_E_S_REML+tlrc[31]”
-dset 1 1 6 “$dirA/stats.s16_E_A_REML+tlrc[31]”
-dset 1 2 6 “$dirA/stats.s16_E_S_REML+tlrc[31]”
-dset 1 1 7 “$dirA/stats.s18_E_A_REML+tlrc[31]”
-dset 1 2 7 “$dirA/stats.s18_E_S_REML+tlrc[31]”
-dset 1 1 8 “$dirA/stats.s19_E_A_REML+tlrc[31]”
-dset 1 2 8 “$dirA/stats.s19_E_S_REML+tlrc[31]”
-dset 1 1 9 “$dirA/stats.s20_E_A_REML+tlrc[31]”
-dset 1 2 9 “$dirA/stats.s20_E_S_REML+tlrc[31]”
-dset 1 1 10 “$dirA/stats.s21_E_A_REML+tlrc[31]”
-dset 1 2 10 “$dirA/stats.s21_E_S_REML+tlrc[31]”
-dset 1 1 11 “$dirA/stats.s22_E_A_REML+tlrc[31]”
-dset 1 2 11 “$dirA/stats.s22_E_S_REML+tlrc[31]”
-dset 1 1 12 “$dirA/stats.s23_E_A_REML+tlrc[31]”
-dset 1 2 12 “$dirA/stats.s23_E_S_REML+tlrc[31]”
-dset 1 1 13 “$dirA/stats.s24_E_A_REML+tlrc[31]”
-dset 1 2 13 “$dirA/stats.s24_E_S_REML+tlrc[31]”
-dset 1 1 14 “$dirA/stats.s25_E_A_REML+tlrc[31]”
-dset 1 2 14 “$dirA/stats.s25_E_S_REML+tlrc[31]”
-dset 1 1 15 “$dirA/stats.s26_E_A_REML+tlrc[31]”
-dset 1 2 15 “$dirA/stats.s26_E_S_REML+tlrc[31]”
-dset 1 1 16 “$dirA/stats.s27_E_A_REML+tlrc[31]”
-dset 1 2 16 “$dirA/stats.s27_E_S_REML+tlrc[31]”
-dset 1 1 17 “$dirA/stats.s28_E_A_REML+tlrc[31]”
-dset 1 2 17 “$dirA/stats.s28_E_S_REML+tlrc[31]”
-dset 1 1 18 “$dirA/stats.s29_E_A_REML+tlrc[31]”
-dset 1 2 18 “$dirA/stats.s29_E_S_REML+tlrc[31]”
-dset 1 1 19 “$dirA/stats.s30_E_A_REML+tlrc[31]”
-dset 1 2 19 “$dirA/stats.s30_E_S_REML+tlrc[31]”
-dset 1 1 20 “$dirA/stats.s31_E_A_REML+tlrc[31]”
-dset 1 2 20 “$dirA/stats.s31_E_S_REML+tlrc[31]”
-dset 2 1 1 “$dirA/stats.s10_E_A_REML+tlrc[31]”
-dset 2 2 1 “$dirA/stats.s10_E_S_REML+tlrc[31]”
-dset 2 1 2 “$dirA/stats.s11_E_A_REML+tlrc[31]”
-dset 2 2 2 “$dirA/stats.s11_E_S_REML+tlrc[31]”
-dset 2 1 3 “$dirA/stats.s12_E_A_REML+tlrc[31]”
-dset 2 2 3 “$dirA/stats.s12_E_S_REML+tlrc[31]”
-dset 2 1 4 “$dirA/stats.s13_E_A_REML+tlrc[31]”
-dset 2 2 4 “$dirA/stats.s13_E_S_REML+tlrc[31]”
-dset 2 1 5 “$dirA/stats.s15_E_A_REML+tlrc[31]”
-dset 2 2 5 “$dirA/stats.s15_E_S_REML+tlrc[31]”
-dset 2 1 6 “$dirA/stats.s16_E_A_REML+tlrc[31]”
-dset 2 2 6 “$dirA/stats.s16_E_S_REML+tlrc[31]”
-dset 2 1 7 “$dirA/stats.s18_E_A_REML+tlrc[31]”
-dset 2 2 7 “$dirA/stats.s18_E_S_REML+tlrc[31]”
-dset 2 1 8 “$dirA/stats.s19_E_A_REML+tlrc[31]”
-dset 2 2 8 “$dirA/stats.s19_E_S_REML+tlrc[31]”
-dset 2 1 9 “$dirA/stats.s20_E_A_REML+tlrc[31]”
-dset 2 2 9 “$dirA/stats.s20_E_S_REML+tlrc[31]”
-dset 2 1 10 “$dirA/stats.s21_E_A_REML+tlrc[31]”
-dset 2 2 10 “$dirA/stats.s21_E_S_REML+tlrc[31]”
-dset 2 1 11 “$dirA/stats.s22_E_A_REML+tlrc[31]”
-dset 2 2 11 “$dirA/stats.s22_E_S_REML+tlrc[31]”
-dset 2 1 12 “$dirA/stats.s23_E_A_REML+tlrc[31]”
-dset 2 2 12 “$dirA/stats.s23_E_S_REML+tlrc[31]”
-dset 2 1 13 “$dirA/stats.s24_E_A_REML+tlrc[31]”
-dset 2 2 13 “$dirA/stats.s24_E_S_REML+tlrc[31]”
-dset 2 1 14 “$dirA/stats.s25_E_A_REML+tlrc[31]”
-dset 2 2 14 “$dirA/stats.s25_E_S_REML+tlrc[31]”
-dset 2 1 15 “$dirA/stats.s26_E_A_REML+tlrc[31]”
-dset 2 2 15 “$dirA/stats.s26_E_S_REML+tlrc[31]”
-dset 2 1 16 “$dirA/stats.s27_E_A_REML+tlrc[31]”
-dset 2 2 16 “$dirA/stats.s27_E_S_REML+tlrc[31]”
-dset 2 1 17 “$dirA/stats.s28_E_A_REML+tlrc[31]”
-dset 2 2 17 “$dirA/stats.s28_E_S_REML+tlrc[31]”
-dset 2 1 18 “$dirA/stats.s29_E_A_REML+tlrc[31]”
-dset 2 2 18 “$dirA/stats.s29_E_S_REML+tlrc[31]”
-dset 2 1 19 “$dirA/stats.s30_E_A_REML+tlrc[31]”
-dset 2 2 19 “$dirA/stats.s30_E_S_REML+tlrc[31]”
-dset 2 1 20 “$dirA/stats.s31_E_A_REML+tlrc[31]”
-dset 2 2 20 “$dirA/stats.s31_E_S_REML+tlrc[31]”
-fa types
-fb conditions
-fab types_cond_interact
-adiff 1 2 E_vs_R
-bdiff 1 2 A_vs_S
-aBcontr 1 -1 : 1 E_vs_R_A
-aBcontr 1 -1 : 2 E_vs_R_S
-Abcontr 1 : 1 -1 A_vs_S_E
-Abcontr 2 : 1 -1 A_vs_S_R
-bucket anova \

[Issue]
-bucket: Command not found
was appeared. I tried to find what is the problem, but I couldn’t get the solution…

Therefore… may I ask you what’s the problem in this part?
Thank you in advance.

You are missing a line continuation character
at the end of the prior line. So the shell thinks
“-bucket” is supposed to be the start of a new
command (and 3dANOVA3 does not see that
option).

  • rick

Dear Rick,

Thank you for the comment!
Even I checked the script more than three times, I didn’t realize that I missed the '' at the end of the prior line…

Thanks!
DaWoon