文章目录
- Eprime学习
- 心理学实验程序设计的基本框架
- 一、实验设计的基本原则
- 二、实验过程(procedure)与实验列表(list)
- 三、心理学实验设计的基本模式
- 四、心理学常用的功能与制作
- E-basic语言
Eprime学习
心理学实验程序设计的基本框架
心理实验程序设计的”12345“模式化的理论与方法,即“一个过程、两种类型、三大原则、四种模式、五个要素”。
一、实验设计的基本原则
1.结构化原则
- 心理实验具有结构性,是由一部分一部分的实验单元组成的,每个单元完成独立而又相互联系的功能;
- 心理实验程序通常由以下10个部分组成:指导语(Instruetion)、注视点(Fixation)、刺激界面(Probe)、反馈界面(Feedback)、刺激间隔(ISI、SOA、Interval)、实验缓冲(BufferInterval)、结语界面(ExpEnd)、掩蔽界面(Mask)。
2.模式化原则
- 心理学实验对各个基本单元的控制具有一定的模式可循,具体包括“五要素”:
- 呈现时间(Duration)
- 呈现时间是指一个界面呈现在被试面前的持续时间,有长至几分钟(如探测界面的等待反应),也有短至几十毫秒(如瞬时记忆实验中刺激呈现界面为50ms)不等。呈现时间有三种形式︰固定时间形式、变化时间形式和无限时间形式。
- 呈现方式(Mode)
- 自动消失符合、按键消失被试、反应消失被试、自动+反应
- 呈现格式(Format)
- 大小颜色等物理刺激、位置、边框
- 反应方式(Response)
- 键盘反应(按压按键、释放按键、输入)、语音反应、外接设备(手柄)、鼠标
- 数据收集(Data Logging)
- 反应时(RT:Response Time)、正确与错误(ACC:Accuracy)、被试的反应(RESP:Response)、正确反应键(CRESP:Correct Response)
- 呈现时间(Duration)
3.流程化原则
- E-prime实验程序是依据图示控制放置的顺序,依次呈现的。其中核心程序可能反复呈现。我们将实验过程画成流程图,然后据此设计实验,更加清晰。
二、实验过程(procedure)与实验列表(list)
1.实验过程:
- 功能:放置图像控件,按顺序运行它们。
2.实验列表:
- 功能:放置每个试次的实验刺激和条件,按住试设定的方式运行它们。
三、心理学实验设计的基本模式
1.单一实验模式:
- 核心控件:1个总过程、1个核心过程、1个列表功能
- 完成一个心理学实验所需的最小架构
2.并联模式
该模式的实验设计由两个存储不同实验材料及相关控制的List(和两个CEP组成,两个过程上下组成并联关系。如信号检测实验就属并联模式的实验设计。Listl和CEP1完成学习阶段的任务,List2和CEP2完成测试阶段的任务。
3.串联模式
该模式的实验设计由两个存储不同实验材料及相关控制的List和两个不同核心实验过程CEP组成,两个过程上下组成串联关系。
4.嵌套模式
该模式至少由二个存储不同实验材料及相关控制的List和一个核心实验过程CEP组成(图中呈现三个),两个存放着不同实验材料和控制的List l和List2相嵌在总的list中,CEP调用List中的材料和控制,而List即调用List 1和List 2的材料与控制。该模式适合较为复杂的实验设计,特别是刺激物的颜色、方位、大小等属性或变量都需要完全随机化结合的实验设计。
5.平衡模式
该模式至少由三个存储不同实验材料及相关控制的List和两个核心实验过程CEP组成。Listl存放各种条件信息;List2存放运行信息,List2I和List 22(还可以有List 23、List24等多个List)存放各种条件的刺激,并相嵌在ILisl2中;核心实验过程CEP2调用选中条件的材料和控制。
四、心理学常用的功能与制作
1.指导语
- 作用:告诉被试实验是怎样进行,被试应该怎样做出反应。
- 实验设计
- 呈现时间
- 无限时间,读懂按空格键开始实验
- 呈现方式
- 按键消失
- 格式
- 文字或图片
- 呈现时间
- 注意:语气温柔、轻和
- 如:同学您好,欢迎您参加本次实验。本次实验是xxxx。在本次实验中,您将会看到xxxx,看到xxx做出按键选择。 如果您明白了本次实验流程,请您按空格键开始实验!
2.注视点
十 或 *
- 作用:
- 通过醒目的一个符号,来提醒被试集中精神,注视屏幕,不要分散注意力
- 实验设计
- 时间:500-800ms
- 方式:自动消失
- 格式
3.刺激界面
- 作用:呈现实验材料
- 实验设计:
- 时间:根据实验具体设定
- 方式:自动消失或按键消失
- 格式
4.探测界面(可能与刺激界面合一)
- 作用:用来探测被试的反应和收集反应的数据
- 实验设计:
- 时间:无限时间
- 方式:具体实验要求(鼠标或键盘)
- 格式
5.探测线索(未必有)
- 作用:用来提示被试让他有一个反应的倾向的准备。接下来的界面需要被试根据指导语的要求来进行按键反应,要求被试做好充分的心理准备;去除习惯按键;
6.反馈(一般有)
- 作用: 用来对被试的反应做出正确或错误的反馈,对错误的反馈做出一个提醒或解释;记录被试的反应时间;累积正确率,给出被试练习或实验开始之后累积的正确率,让被试知道自己对实验总体把握程度以及对实验的配合程度。
- 时间:1000ms~2000ms
- 呈现方式:自动消失
7.刺激间隔(ISI、SOA、Intervel)一定有
- 作用:按照实验的要求,用来延迟下一个界面或下一个刺激的出现;
8.实验缓冲(一定有)
- 作用:让被试休息
9.掩蔽页面(未必有)
10.结束语(一定有)
E-basic语言
1.常量:取固定值的量
- 数值型:整数、实数(小数表示,科学计数法)
- 字符型:双引号内,<=255个字符的符号串
2.变量:取值变化的量
- 命名变量:
- 25个英文字母的大写或小写起头,后接字母或数字,最大80个字符;
- C是软件命令符,不能作为变量名;
- 不能以“FN”开头,不能以end、procedure等软件预设名称为单独变量名,但可作为一部分;
- 空格、Shift+数字、标点符号、括号、运算符不能作为变量名;
- 不能重名;
- 变量的作用域和生命周期:
- 局部变量:可以指定作用域 Dim
- 全局变量:默认作用于全部实验过程 Global、Public
- 变量的定义:
- 在总过程中定义Dim、Global、Public变量名as类型;
- 在局部过程中定义Dim变量名as类型;
- 未定义变量的错误提示 variable not defined;
- 定义多个变量加英文“,”
3.常值变量:取固定值的变量
4.数值变量:
- 整数变量:
- 可以被赋值为整数的变量(integer),以%标识实数变量;
- 可以被赋值为实数的变量(single),以!标识双精度变量;
- 占用两倍内存空间的实数变量(Double),以#标识;
- 字符变量(String),以$ 标识;
5.算符与内置函数:
- ±*/
- MOD求余
- ()
- < > >= <= <>(不等于)
- Random(n,m) 在n到m随机选一个整数
- ABS(x) 绝对值
- SQR(x) 算术平方根
- INT(x) 不大于x的最大整数
- FIX(x) 截整
- RND(x) 产生>0但<1的随机数(实数型)
- LEN(字符串) :字符串长度
- STR$(表达式):将数值或表达式转换为字符串,包含标点和空格
- VAL(字符串表达式):将字符串转换为数值
- LEFT(字符串,n):从左取字符串中的n个连续字符
- RIGHT(字 符串,n):从右取字符串中的n个连续字符
- MID(字符串 ,n,m)从第n个字符开始,向右取m个字符,为空则全取。
- INSTR(n,字符串1,字符串2):从字符串1左数第n个字符开始,查找字符串2在字符串1中第一次出现的位置;n为空则从第一个字符开始查找,找不到的话INSTR=0;
- STRING$(n,“字符”)输入字符,得到相应的字符串;
- String$(4,“a”) = “aaaa”
- 逻辑运算符:AND、OR、NOT
6.选择语句
if ......then
......
Else
......
End if
7.inline设置对象的值
- 对象名.属性名< 条件 > word.text=“a”
- Pic.acc>1
- Pic.duration=500
8.inline获取对象的值
- 对象.属性=值/变量
- Pic.acc=a
- Pic.duration=b
9.插入休息
- 作用:实验完成一定次数后自动进入休息页面
- A.定义变量;B.计数;C.求余;D.判定;E.跳转
10.随时结束
- 作用:随时结束实验
- A.定义变量(全局);B.判定;C.跳转
11.颜色变换
- 作用:根据被试反应的正误,选择刺激呈现的颜色;
- A.判定;B.指定颜色
if zimu.acc=0 then
zimu.forecolor=ccolor("green")
else
zimu.forecolor=ccolor("yellow")
end if
12.随机间距
- 作用:时间间隔随机化,避免预期
- A.inline设置duration为随机函数的取值
13.常用语句
- InputBox(“输入提示”,“标题”,“X坐标”,“Y坐标”) 作用:输入包括汉字在内的信息;
- MsgBox(“提示信息”,“标题”) 作用:显示上一次输入的信息,作为反馈
- AskBox(“输入提示”,“标题”) 作用:同inputbox
- Debug.Print"字符",变量,数字,标点,公司等输出打印结果
- Format(表达式,“格式”) 作用:将表达式转换为指定的格式
14.循环语句
- For语句是循环的起点,称为"循环起始语句"或"循环说明语句",由它决定执行几次循环,从循环初值开始,到超过循环终值结束;
- Next语句是"循环终端语句",执行到此语句时,循环变量就取下一个值,即将循环变量加一个步长值,然后与终值比较,判断和决定是否进入下一次循环;
- 循环变量可以用任一简单变量表示。For后的循环变量和Next后的循环变量是一致的;
- 初值、终值和步长值可以是常数,或已被赋值的变量,也可以是算术表达式。步长为1时,可以省略不写。步长值可以是正数,此时为递增循环;也可以为负数,此时为递减循环;
- For和Next必须成对出现;
- 单层循环时,Next语句的循环变量可以省略。多重嵌套循环时,Next语句的循环变量不能省,其循环变量与For的循环变量必须按层次一一对应;
(1)For…Next循环
(2)Do While 循环
(3)Do Until<…Loopx循环
(4)多重(嵌套)循环
15.循环结构在心理学实验设计中的作用
- 涉及累积过程的实验累积并记录多次输入的值
- 涉及动态的实验
- 利用循环语句反复播放动态内容,直到被试做出反应
16.选择结构
(1)if…then结构
(2)if…then…else…end if
(3)if…then…else if …end if
If probe.RT < 400 then
Msgbox "你反应慢了"
else if probe.RT > 1200 then
Msgbox "反应慢了"
Else
Msgbox "反应很好"
End if
(4)Select Case (表达式) 结构
dim i,sum1,sum2,sum3 as integer
for i = 1 to 20
select case (i mod 3)
case 1
sum1=sum1+i
case 2
sum2=sum2+i
case 3
sum3=sum3+i
end select
next
debug.print"1-20被3整除余1的数之和为:" &sum1
debug.print"1-20被3整除余2的数之和为:" &sum2
debug.print"1-20被3整除余3的数之和为:" &sum3
msgbox"yun xing wan bi"
17.数组
(1)命名规则:
- 数组名称与单变量命名规则一致
- 下标必须用英文状态的括号
- 下标可以是常量,变量或表达式
- 下标不能非负
- 一个矩阵数组占据一片连续的存储单元