0

我需要分析一些存储在 csv 文件中的数据。每个文件代表 3 个设备的输出,每个设备具有不同的数据采样率和不同的时间戳约定。我想匹配每个 csv 文件中的时间戳,以便我可以将来自单个主题的所有数据整理到单个文件中,并使用它放入 R。

不同的时间戳约定如下

设备 1(皮肤电反应):

04/12/2012 14:17

设备 2(心率监测器):

14:16:13

设备 3(我们要求受试者执行的实际任务):

134941

我认为这意味着 13:49:41。

我知道每个实验的执行日期,所以这正是我需要匹配的时间。

数据代表心率、受试者的皮肤电反应和用户输入平板电脑的结果。我需要将他们在任务中的表现与皮肤电导率和心率的变化联系起来——因此我需要匹配这些时间。

例如,根据我们使用的各种实验条件,每个人有一个用于皮肤反应的文件和一个单独的心率,但有多个文件(具有相似的时间)用于我们的任务性能。我宁愿不亲自执行此匹配任务,因为这些文件大约有 300 个。

4

1 回答 1

2

使用time模块的strptime()方法将日期解析为时间对象,并使用strftime()以特定格式打印出来(如果需要)。

例子:

import time

device1 = '04/12/2012 14:17'
device2 = '14:16:13'
device3 = '134941'

time1 = time.strptime(device1, '%m/%d/%Y %H:%M')
time2 = time.strptime(device2, '%H:%M:%S')
time3 = time.strptime(device3, '%H%M%S')

请注意,任何仅小时/分钟/秒或其任何子集的解析时间将默认具有 1900-01-01 的日期。但是,如果您所做的只是从已解析的 struct_time 对象中提取时间部分,则不会影响您。否则,您需要在解析字符串时为它们分配正确的日期:

time2 = time.strptime('04/12/2012 ' + device2, '%m/%d/%Y %H:%M:%S')
于 2012-12-09T18:40:58.043 回答