Excel - 平均第二列定义的列范围和另一个条件

时间:2015-12-31 05:28:02

标签: r excel matlab

我有一个非常大的数据表,包含3个我感兴趣的列。

第1列标识时间(C列);这些值重复(每十分之一秒12):

03:30.8

03:30.8

03:30.8

03:30.8

03:30.8

03:30.8

03:30.9

03:30.9

03:30.9

03:30.9

03:30.9

第二列给出了我感兴趣的数据(数值,瞳孔扩张,因变量 - 列J)示例:

3.782994

3.789125

3.784591

3.786793

3.789103

3.786221

3.780111

3.783228

3.781195

3.775694

第3列包含文本字符串,用于标识在给定时间(第1列)给定测量(第2列)的视频刺激。刺激名称列是AA。例如:

没有媒体

没有媒体

没有媒体

Happy.avi

Happy.avi

Happy.avi

Happy.avi

Happy.avi

Happy.avi

Happy.avi

Happy.avi

Happy.avi

偶尔表格中会有空白行。

我需要平均瞳孔扩张数据(C栏) 对于给定的刺激("快乐" - 列AA) 但是它开始后2秒,从第一次刺激的观察开始将是241个细胞/行,平均值将涉及数千个数据单元。

我想使用Excel(R和MATLAB的建议也欢迎)。

非常感谢阅读并考虑到这一点!

1 个答案:

答案 0 :(得分:0)

以下是使用AVERAGEIFOFFSETCOUNTA的Excel解决方案:

Excel sheet

所以使用的公式是

=AVERAGEIF(OFFSET(C2,0,0,COUNTA(C:C)-1),"="&E4,OFFSET(B2,2,0,COUNTA(C:C)-1))

A是时间,列B是数据,列C是刺激并假设标题行(即数据全部从第2行开始)。请注意,COUNTA用于定义OFFSET高度,因此-1将考虑我的单个标题行,您可能需要针对您的工作表进行调整。