特鲁普效应测试
特鲁普效应是著名的心理学现象,展示了人们对事物的认知过程已是一个自动化的历程。当有一个新的刺激出现时,如果它的特征和原先的刺激相似或符合一致,便会加速人们的认知;反之,若新的刺激特征与原先的刺激不相同,则会干扰人们的认知,使人们的所需的反映数据变长。
简单来说,斯特鲁普效应是当有与原有认知不同的情况出现时,人们的反应时间会较长。
接下来验证特鲁普效应
通过网上的stroop实验做测试人的反应时间
网址:https://faculty.washington.edu/chudler/java/ready.html
每名参与者得到两组有颜色的文字,第一组数据是字体内容和字体颜色一致,第二组数据是字体内容和字体颜色不一致。
每名参与者对每组文字说出文字的颜色,并分别统计完成每组的时间。每名参与者得到两组有颜色的文字,第一组数据是字体内容和字体颜色一致,第二组数据是字体内容和字体颜色不一致。每名参与者对每组文字说出文字的颜色,并分别统计完成每组的时间。
此次实验共记录25组数据 ,并汇总到Excel的表格中
一、描述统计分析
#导入包
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
导入数据集
data = pd.read_csv('斯特鲁普数据集.csv',encoding = 'GBK')
data.head()
Congruent列是(第一组数据)字体内容和字体颜色一致情况下,实验者的反应时间。
Incongruent列是(第二组数据)字体内容和字体颜色不一致情况下,实验者的反应时间。
查看数据的描述统计
data.describe()
# 第一组数据:字体内容和字体颜色一致情况下,实验者的反应时间
#第一组数据均值
con1_mean = data['Congruent'].mean()
# 第一组数据标准差
con1_std = data['Congruent'].std()
# 第一组数据:字体内容和字体颜色一致情况下,实验者的反应时间
# 第二组数据均值
con2_mean = data['Incongruent'].mean()
# 第二组数据标准差
con2_std = data['Incongruent'].std()
print('第一组数据:字体内容和字体颜色Congruen(一致)情况下,实验者的平均反应时间是:',con1_mean,'秒,标准差是',con1_std,'秒')
print('第二组数据:字体内容和字体颜色Incongruent(不一致)—情况下,实验者的平均反应时间是:',con2_mean,'秒,标准差是',con2_std,'秒')
第一组数据:字体内容和字体颜色Congruen(一致)情况下,实验者的平均反应时间是: 13.926875 秒,标准差是 3.5402194271529703 秒
第二组数据:字体内容和字体颜色Incongruent(不一致)—情况下,实验者的平均反应时间是: 22.350749999999994 秒,标准差是 5.010217727196399 秒
观察两个样本数据分布情况
fig=plt.figure(figsize=(20,9))
ax=fig.add_subplot(1,1,1)
data.plot(kind='bar',ax=ax)
plt.show()
[图片上传失败...(image-2b7d0-1532578605410)]
描述分析结果可知,Incongruent(不一致) 情况下所用时间均大于Congruen(一致)情况,也就是当字体内容和字体验证不一致时,实验者的平均反应时间变长
二、推论统计分析
假设检验
1.问题是什么?
要研究的问题是:验证特鲁普效应是否存在?
零假设和备选假设
零假设H0:特鲁普效应是不存在,即人们的反应时间不会因为字体内容和字体颜色是否相同,测试时间不会变长 u1 = u2,第一组的平均值等于第二组的平均值
备选假设H1:特鲁普效应是真的存在。颜色和文字不同的情况下,人们的完场测试的时间会变长u1 < u2,第一组的平均值小于第二组的平均值
检验类型
因为该使用两组数据是相关样本,所以选择相关配对检验
相关配对检验只关注每对相关数据的差值,从而避免得到的结论受到参与人员间正常反应时间独立性的影响。在只关注差值集的情况下,样本集处理后只有一组(差值集)。下面我们对样本数据进行处理,从而得到差值集。
#差值数据集
data['差值'] =data['Congruent'] -data['Incongruent']
data.head()
此次测试样本大小是25,样本大小小于30,属于小样本,我们观察下数据集分布是否符合t分布
import seaborn as sns
sns.distplot(data['差值'])
plt.title('差值数据集分布')
plt.show()
通过观察数据集分布。近似符合正态分布,满足了t分布的条件,可以使用t分布样本检验
检验方向
由于备选假设中颜色和文字不同的情况下,人们的完场测试的时间会变长,即u1 < u2,小于号,因此检验方向为单尾检验中的左尾检验。
显著水平为5%,t检验的自由度df=n-1=25-1=24
2.证据是什么?
#导入统计模块(stats)
from scipy import stats
t,p_twoTail = stats.ttest_rel(data['Congruent'],data['Incongruent'])
print('t值=',t,'双尾检验的p值=',p_twoTail)
t值= -8.088610872807587 双尾检验的p值= 3.548719149724915e-08
因为scipy计算出的是双尾检验的t值和p值,但是我们这里是左尾检验。
根据对称性,双尾的p值是对应单尾p值的2倍
#单尾检验的p值
p_oneTail=p_twoTail/2
print('单尾检验的p值=',p_oneTail)
单尾检验的p值= 1.7743595748624577e-08
3.判断标准是什么?
判断标准这里设置显著水平使用alpha=5%
alpha=0.05
4.做出结论
if(t<0 and p_oneTail
拒绝零假设,有统计显著,特鲁普效应存在
5.置信区间
求置信区间和t的值
置信水平对应的t值(t_ci)
查找t表格获取 95%的置信水平,自由度是n-1对应的t值 t=2.064
2)计算上下限
置信区间上限a=样本平均值 - t_ci ×标准误差
置信区间下限b=样本平均值 - t_ci ×标准误差
t_ci=2.064
#差值数据集平均值
sample_mean=data['差值'].mean()
#使用scipy计算标准误差
se=stats.sem(data['差值'])
#置信区间上限
a=sample_mean - t_ci * se
#置信区间下限
b=sample_mean + t_ci * se
print('两个平均值差值的置信区间,95置信水平 CI=[%f,%f]' % (a,b))
两个平均值差值的置信区间,95置信水平 CI=[-10.573426,-6.274324]
6.效应量
#差值数据集对应的总体平均值是0
pop_mean=0
#差值数据集的标准差
sample_std=data['差值'].std()
d=(sample_mean - pop_mean) / sample_std
print('d=',d)
d= -1.6510807805255563
三、数据分析报告总结
1.描述统计分析
当字体颜色和字体内容Congruent(一致)时,实验者的平均反应时间是13.92687 秒,标准差是 3.5402 秒
当字体颜色和字体内容Incongruent(不一致)时,实验者的平均反应时间是22.3507 秒,标准差是 5.0102秒。
“Incongruent”的反应时间大于“Congruent”时的反应时间,即当字体颜色和字体内容不一致时平均反映时间较长
2、推论统计分析
1)假设检验
相关配对检验t(24)=-8.0886,p=3.5485e-08 (α=5%),左尾检验
统计存在显著差异,拒绝零假设,说明验证斯特鲁普效应真实存在的。
2)置信区间
两个平均值差值的置信区间,95%置信水平 CI=[-10.573426,-6.274324]
3)效应量
d= -1.651