Millisecond Forums

Assignment of participants to conditions

https://forums.millisecond.com/Topic23945.aspx

By Nick Riches - 3/4/2018

Hi
I would like to assign participants to one of four conditions. I have an 'experiment' file which calls other files as shown below. Unfortunately, this doesn't seem to have worked, as I only have responses for conditions 1 to 3 (there are 14 responses, so they should have cycled through all four conditions).

Is there anything wrong with the code?

Thanks

Nick

<batch>
/ subjects = (1 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C1.iqx"
</batch>


<batch>
/ subjects = (2 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C2.iqx"
</batch>


<batch>
/ subjects = (3 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C3.iqx"
</batch>


<batch>
/ subjects = (4 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C4.iqx"
</batch>
By Dave - 3/5/2018

Nick Riches - Monday, March 5, 2018
Hi
I would like to assign participants to one of four conditions. I have an 'experiment' file which calls other files as shown below. Unfortunately, this doesn't seem to have worked, as I only have responses for conditions 1 to 3 (there are 14 responses, so they should have cycled through all four conditions).

Is there anything wrong with the code?

Thanks

Nick

<batch>
/ subjects = (1 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C1.iqx"
</batch>


<batch>
/ subjects = (2 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C2.iqx"
</batch>


<batch>
/ subjects = (3 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C3.iqx"
</batch>


<batch>
/ subjects = (4 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C4.iqx"
</batch>

There is nothing obviously wrong with those <batch> elements. This, however,

"I only have responses for conditions 1 to 3 (there are 14 responses, so they should have cycled through all four conditions)."

is not necessarily true or indicative of some issue with the code. It depends on what option you chose to generate subject numbers (since the condition assignment is based on the subject number in your <batch> elements), whether there actually were subject numbers generated (e.g. randomly) that should have invoked the 4th condition, and whether the participants who got those subject numbers actually chose to participate (the subject number is generated when visiting the experiment's launch page on the web, and a mere visit doesn't mean the person then actually participated, s/he might have chosen not to).
By Nick Riches - 3/5/2018

Dave - Monday, March 5, 2018
Nick Riches - Monday, March 5, 2018
Hi
I would like to assign participants to one of four conditions. I have an 'experiment' file which calls other files as shown below. Unfortunately, this doesn't seem to have worked, as I only have responses for conditions 1 to 3 (there are 14 responses, so they should have cycled through all four conditions).

Is there anything wrong with the code?

Thanks

Nick

<batch>
/ subjects = (1 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C1.iqx"
</batch>


<batch>
/ subjects = (2 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C2.iqx"
</batch>


<batch>
/ subjects = (3 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C3.iqx"
</batch>


<batch>
/ subjects = (4 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C4.iqx"
</batch>

There is nothing obviously wrong with those <batch> elements. This, however,

"I only have responses for conditions 1 to 3 (there are 14 responses, so they should have cycled through all four conditions)."

is not necessarily true or indicative of some issue with the code. It depends on what option you chose to generate subject numbers (since the condition assignment is based on the subject number in your <batch> elements), whether there actually were subject numbers generated (e.g. randomly) that should have invoked the 4th condition, and whether the participants who got those subject numbers actually chose to participate (the subject number is generated when visiting the experiment's launch page on the web, and a mere visit doesn't mean the person then actually participated, s/he might have chosen not to).

Thanks. I understood that the above code would cycle through the conditions, e.g.

first respondent = condition 1
second respondent = condition 2
third respondent = condition 3
forth respondent = condition 4
fifth respondent = condition 1
sixth respondent = condition 2

Am I right about that?

Thanks
By Dave - 3/5/2018

Nick Riches - Monday, March 5, 2018
Dave - Monday, March 5, 2018
Nick Riches - Monday, March 5, 2018
Hi
I would like to assign participants to one of four conditions. I have an 'experiment' file which calls other files as shown below. Unfortunately, this doesn't seem to have worked, as I only have responses for conditions 1 to 3 (there are 14 responses, so they should have cycled through all four conditions).

Is there anything wrong with the code?

Thanks

Nick

<batch>
/ subjects = (1 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C1.iqx"
</batch>


<batch>
/ subjects = (2 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C2.iqx"
</batch>


<batch>
/ subjects = (3 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C3.iqx"
</batch>


<batch>
/ subjects = (4 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C4.iqx"
</batch>

There is nothing obviously wrong with those <batch> elements. This, however,

"I only have responses for conditions 1 to 3 (there are 14 responses, so they should have cycled through all four conditions)."

is not necessarily true or indicative of some issue with the code. It depends on what option you chose to generate subject numbers (since the condition assignment is based on the subject number in your <batch> elements), whether there actually were subject numbers generated (e.g. randomly) that should have invoked the 4th condition, and whether the participants who got those subject numbers actually chose to participate (the subject number is generated when visiting the experiment's launch page on the web, and a mere visit doesn't mean the person then actually participated, s/he might have chosen not to).

Thanks. I understood that the above code would cycle through the conditions, e.g.

first respondent = condition 1
second respondent = condition 2
third respondent = condition 3
forth respondent = condition 4
fifth respondent = condition 1
sixth respondent = condition 2

Am I right about that?

Thanks

No, that's not exactly what the code means. The code means,

/ subjects = (1 of 4)

-> if the provided subject number taken modulo 4 equals 1, run the 1st set of scripts,

/ subjects = (2 of 4)

-> if the provided subject number taken modulo 4 equals 2, run the 2nd set of scripts,


/ subjects = (3 of 4)

-> if the provided subject number taken modulo 4 equals 3, run the 3rd set of scripts, and finally


/ subjects = (4 of 4)

-> if the provided subject number taken modulo 4 equals 0, i.e. is an exact multiple of 4, run the 4th set of scripts.

So, it all depends on what subject numbers where generated / assigned and how, and whether the respective participant(s) then actually took part in the experiment or not.
By Nick Riches - 3/5/2018

Dave - Monday, March 5, 2018
Nick Riches - Monday, March 5, 2018
Dave - Monday, March 5, 2018
Nick Riches - Monday, March 5, 2018
Hi
I would like to assign participants to one of four conditions. I have an 'experiment' file which calls other files as shown below. Unfortunately, this doesn't seem to have worked, as I only have responses for conditions 1 to 3 (there are 14 responses, so they should have cycled through all four conditions).

Is there anything wrong with the code?

Thanks

Nick

<batch>
/ subjects = (1 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C1.iqx"
</batch>


<batch>
/ subjects = (2 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C2.iqx"
</batch>


<batch>
/ subjects = (3 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C3.iqx"
</batch>


<batch>
/ subjects = (4 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C4.iqx"
</batch>

There is nothing obviously wrong with those <batch> elements. This, however,

"I only have responses for conditions 1 to 3 (there are 14 responses, so they should have cycled through all four conditions)."

is not necessarily true or indicative of some issue with the code. It depends on what option you chose to generate subject numbers (since the condition assignment is based on the subject number in your <batch> elements), whether there actually were subject numbers generated (e.g. randomly) that should have invoked the 4th condition, and whether the participants who got those subject numbers actually chose to participate (the subject number is generated when visiting the experiment's launch page on the web, and a mere visit doesn't mean the person then actually participated, s/he might have chosen not to).

Thanks. I understood that the above code would cycle through the conditions, e.g.

first respondent = condition 1
second respondent = condition 2
third respondent = condition 3
forth respondent = condition 4
fifth respondent = condition 1
sixth respondent = condition 2

Am I right about that?

Thanks

No, that's not exactly what the code means. The code means,

/ subjects = (1 of 4)

-> if the provided subject number taken modulo 4 equals 1, run the 1st set of scripts,

/ subjects = (2 of 4)

-> if the provided subject number taken modulo 4 equals 2, run the 2nd set of scripts,


/ subjects = (3 of 4)

-> if the provided subject number taken modulo 4 equals 3, run the 3rd set of scripts, and finally


/ subjects = (4 of 4)

-> if the provided subject number taken modulo 4 equals 0, i.e. is an exact multiple of 4, run the 4th set of scripts.

So, it all depends on what subject numbers where generated / assigned and how, and whether the respective participant(s) then actually took part in the experiment or not.

Thanks. I still don't quite understand. If I wish to assign subjects evenly to one of four conditions based on timestamps (e.g. the first participant is given condition 1, the second is given condition 2, the third is given condition 3, the forth is given condition 4, and the fifth goes back to condition 1) what would be the best way to to do this?
By Dave - 3/6/2018

Nick Riches - Monday, March 5, 2018
Dave - Monday, March 5, 2018
Nick Riches - Monday, March 5, 2018
Dave - Monday, March 5, 2018
Nick Riches - Monday, March 5, 2018
Hi
I would like to assign participants to one of four conditions. I have an 'experiment' file which calls other files as shown below. Unfortunately, this doesn't seem to have worked, as I only have responses for conditions 1 to 3 (there are 14 responses, so they should have cycled through all four conditions).

Is there anything wrong with the code?

Thanks

Nick

<batch>
/ subjects = (1 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C1.iqx"
</batch>


<batch>
/ subjects = (2 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C2.iqx"
</batch>


<batch>
/ subjects = (3 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C3.iqx"
</batch>


<batch>
/ subjects = (4 of 4)
/ file = "student_ASD_part_1_marker.iqx"
/ file = "student_ASD_survey.iqx"
/ file = "student_ASD_part_2_marker.iqx"
/ file = "student_ASD_magnitude_estimation_C4.iqx"
</batch>

There is nothing obviously wrong with those <batch> elements. This, however,

"I only have responses for conditions 1 to 3 (there are 14 responses, so they should have cycled through all four conditions)."

is not necessarily true or indicative of some issue with the code. It depends on what option you chose to generate subject numbers (since the condition assignment is based on the subject number in your <batch> elements), whether there actually were subject numbers generated (e.g. randomly) that should have invoked the 4th condition, and whether the participants who got those subject numbers actually chose to participate (the subject number is generated when visiting the experiment's launch page on the web, and a mere visit doesn't mean the person then actually participated, s/he might have chosen not to).

Thanks. I understood that the above code would cycle through the conditions, e.g.

first respondent = condition 1
second respondent = condition 2
third respondent = condition 3
forth respondent = condition 4
fifth respondent = condition 1
sixth respondent = condition 2

Am I right about that?

Thanks

No, that's not exactly what the code means. The code means,

/ subjects = (1 of 4)

-> if the provided subject number taken modulo 4 equals 1, run the 1st set of scripts,

/ subjects = (2 of 4)

-> if the provided subject number taken modulo 4 equals 2, run the 2nd set of scripts,


/ subjects = (3 of 4)

-> if the provided subject number taken modulo 4 equals 3, run the 3rd set of scripts, and finally


/ subjects = (4 of 4)

-> if the provided subject number taken modulo 4 equals 0, i.e. is an exact multiple of 4, run the 4th set of scripts.

So, it all depends on what subject numbers where generated / assigned and how, and whether the respective participant(s) then actually took part in the experiment or not.

Thanks. I still don't quite understand. If I wish to assign subjects evenly to one of four conditions based on timestamps (e.g. the first participant is given condition 1, the second is given condition 2, the third is given condition 3, the forth is given condition 4, and the fifth goes back to condition 1) what would be the best way to to do this?

Best way to do this would be to chose sequentially generated subject ids in your web experiment's settings.