if bootstraps == 1:

srri = lambda low, high, size: range(size)

else:

srri = scipy.random.random_integers

for boot in range(bootstraps):

for r in range(n1):

for c in range(n0):

sample_size = trial_result[r][c].size

choices = srri(0, sample_size-1, sample_size)

meas_grid[r,c] = pylab.array(trial_result[r][c][choices],dtype=float).mean()

model_grid[:,:,:,boot], params[:,boot] = \

process_grid(s0, s1, meas_grid)

Instead of

srri = scipy.random.random_integers

if bootstraps == 1:

for r in range(n1):

for c in range(n0):

meas_grid[r,c] = pylab.array(trial_result[r][c],dtype=float).mean()

model_grid[:,:,:,boot], params[:,boot] = \

process_grid(s0, s1, meas_grid)

else:

for boot in range(bootstraps):

for r in range(n1):

for c in range(n0):

sample_size = trial_result[r][c].size

choices = srri(0, sample_size-1, sample_size)

meas_grid[r,c] = pylab.array(trial_result[r][c][choices],dtype=float).mean()

model_grid[:,:,:,boot], params[:,boot] = \

process_grid(s0, s1, meas_grid)

OR

srri = scipy.random.random_integers

for boot in range(bootstraps):

if bootstraps == 1:

for r in range(n1):

for c in range(n0):

meas_grid[r,c] = pylab.array(trial_result[r][c],dtype=float).mean()

model_grid[:,:,:,boot], params[:,boot] = \

process_grid(s0, s1, meas_grid)

else:

for r in range(n1):

for c in range(n0):

sample_size = trial_result[r][c].size

choices = srri(0, sample_size-1, sample_size)

meas_grid[r,c] = pylab.array(trial_result[r][c][choices],dtype=float).mean()

model_grid[:,:,:,boot], params[:,boot] = \

process_grid(s0, s1, meas_grid)