6.3 权衡反应时和正确率
from scipy.stats import bernoulli
import numpy as np
import matplotlib.pyplot as plt
# 重复ddm的函数
def ddm1(D=10, f=0.55, B=40):
# <D>: 总点数
# <f>: 正确点所占的比例
# <B>: 决策边界
i = 0
N_correct = 0
N_wrong = 0
delta = [] # 设置delta为一个列表
delta.append(N_correct - N_wrong)
while np.abs(delta[i]) < B:
for j in range(D):
# 采样这个点的运动方向
dir = bernoulli.rvs(f, size=1)[0]
# update the counts
N_correct = N_correct + dir
N_wrong = N_wrong + (1-dir)
# 增加一帧
i = i + 1
# 计算差异
delta.append(N_correct - N_wrong)
correct = (delta[-1]>0) # 判断正确与否
RT = i # 反应时
return correct, RT, delta 最后更新于