• Eprime学习【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)

    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-203整除余1的数之和为:" &sum1
    debug.print"1-203整除余2的数之和为:" &sum2
    debug.print"1-203整除余3的数之和为:" &sum3
    msgbox"yun xing wan bi"
    

    17.数组

    (1)命名规则:

    • 数组名称与单变量命名规则一致
    • 下标必须用英文状态的括号
    • 下标可以是常量,变量或表达式
    • 下标不能非负
    • 一个矩阵数组占据一片连续的存储单元

    在这里插入图片描述

  • 相关阅读:
    力扣 857. 雇佣 K 名工人的最低成本
    tcpdump使用技巧
    合宙Air724UG LuatOS-Air lvgl7-lvgl(矢量字体)
    咖啡机、电热水壶、豆浆机上架亚马逊美国站UL1082认证标准
    Spring依赖注入源码解析(上)
    性能测试TPS/QPS/RT理解
    工业物联网解决方案:PLC数据上云
    React的Redux的状态管理
    charCodeAt() 方法了解和用法&unicode编码表
    Pr:基本图形(对齐并变换)
  • 原文地址:https://blog.csdn.net/qq_49288362/article/details/142146473