Hi all,
Total noob with PsychoPy trying to make a script work on my machine (Mac OS Catalina 10.15.7). The script works fine on another machine but with mine I get a NameError warning.
The bit of code that seems problematic is shown below. Its a neuroscience study in which we select various stimulus files stored in the csv format depending on different conditions. The variable defining which scenario is used is csv_file. We then try to read this file with pd.read_csv(csv_file)…
Define trials from csv
if expInfo[‘site’] == ‘LeftTP’:
# load left TP trials
if expInfo[‘session’] == ‘PreTMS’:
if expInfo[‘run’] == 1:
csv_file = “trial_list/trials_ses1_run1.csv”
elif expInfo[‘run’] == 2:
csv_file = “trial_list/trials_ses1_run2.csv”
elif expInfo[‘run’] == 3:
csv_file = “trial_list/trials_ses1_run3.csv”
elif expInfo[‘session’] == ‘PostTMS’:
if expInfo[‘run’] == 1:
csv_file = “trial_list/trials_ses1_run4.csv”
elif expInfo[‘run’] == 2:
csv_file = “trial_list/trials_ses1_run5.csv”
elif expInfo[‘run’] == 3:
csv_file = “trial_list/trials_ses1_run6.csv”
elif expInfo[‘site’] == ‘RightTP’:
# load right TP trials
if expInfo[‘session’] == ‘PreTMS’:
if expInfo[‘run’] == 1:
csv_file = “trial_list/trials_ses2_run1.csv”
elif expInfo[‘run’] == 2:
csv_file = “trial_list/trials_ses2_run2.csv”
elif expInfo[‘run’] == 3:
csv_file = “trial_list/trials_ses2_run3.csv”
elif expInfo[‘session’] == ‘PostTMS’:
if expInfo[‘run’] == 1:
csv_file = “trial_list/trials_ses2_run4.csv”
elif expInfo[‘run’] == 2:
csv_file = “trial_list/trials_ses2_run5.csv”
elif expInfo[‘run’] == 3:
csv_file = “trial_list/trials_ses2_run6.csv”
elif expInfo[‘site’] == ‘LeftPreCG’:
# load Left M1 trials
if expInfo[‘session’] == ‘PreTMS’:
if expInfo[‘run’] == 1:
csv_file = “trial_list/trials_ses3_run1.csv”
elif expInfo[‘run’] == 2:
csv_file = “trial_list/trials_ses3_run2.csv”
elif expInfo[‘run’] == 3:
csv_file = “trial_list/trials_ses3_run3.csv”
elif expInfo[‘session’] == ‘PostTMS’:
if expInfo[‘run’] == 1:
csv_file = “trial_list/trials_ses3_run4.csv”
elif expInfo[‘run’] == 2:
csv_file = “trial_list/trials_ses3_run5.csv”
elif expInfo[‘run’] == 3:
csv_file = “trial_list/trials_ses3_run6.csv”
elif expInfo[‘site’] == ‘Vertex’:
# load Vertex trials
if expInfo[‘session’] == ‘PreTMS’:
if expInfo[‘run’] == 1:
csv_file = “trial_list/trials_ses4_run1.csv”
elif expInfo[‘run’] == 2:
csv_file = “trial_list/trials_ses4_run2.csv”
elif expInfo[‘run’] == 3:
csv_file = “trial_list/trials_ses4_run3.csv”
elif expInfo[‘session’] == ‘PostTMS’:
if expInfo[‘run’] == 1:
csv_file = “trial_list/trials_ses4_run4.csv”
elif expInfo[‘run’] == 2:
csv_file = “trial_list/trials_ses4_run5.csv”
elif expInfo[‘run’] == 3:
csv_file = “trial_list/trials_ses4_run6.csv”
Import comma separated trial list
trial_csv = pd.read_csv(csv_file)
But I get this unique error message:
Traceback (most recent call last):
File “/Path/to/script.py”, line 122, in
trial_csv = pd.read_csv(csv_file)
NameError: name ‘csv_file’ is not defined
Experiment ended.
Any idea what that could be. Can send other bits of code if needed.
Thanks!
Nick