我是Python新手,在计算多个参与者的相关系数时遇到了问题。 我有一个数据帧,就像这样:
|Index|Participant|Condition|ReactionTime1|ReactionTime2|
|:---:|:---------:|:-------:|:-----------:|:-------------:|
|1|1|A|320|542|
|2|1|A|250|623|
|3|1|B|256|547|
|4|1|B|301|645|
|5|2|A|420|521|
|6|2|A|123|456|
|7|2|B|265|362|
|8|2|B|402|631|
我想知道在每种情况下,如何计算参与者1和参与者2的反应时间1和反应时间2之间的相关系数。我的真实数据集比这大得多(每个参与者有数百个反应时间,而且参与者也很多)。有没有一个通用的方法来计算这一点,并将系数放入一个新的df中
|Index|Participant|Condition|Correlation coeff|
|:---:|:---------:|:-------:|:-----------:|
|1|1|A|?|
|2|1|B|?|
|3|2|A|?|
|4|2|B|?|
谢谢:)
你可以用
np.corrcoef
和reset_index
试一下groupby
和apply
,然后:给
我们对
np.corrcoef
的返回值使用[0, 1]
,因为它返回一个对称矩阵,其中对角元素被规范化为1,非对角元素相同,并且每个元素都给出所需的系数(因此也可以使用[1, 0]
进行索引)。就是是一个示例返回值,我们对非对角项感兴趣
为什么在您的案例中返回所有
+/- 1
:因为每个参与者&;条件对每个反应只有2个条目,它们总是完全相关,符号是通过它们的方向确定的,即如果一个从一个坐标增加到另一个坐标,那么另一个坐标是增加还是减少相关问题 更多 >
编程相关推荐