Pandas 对两个日期时间列求和
例如,我有一个带有两列的datadframePandas 对两个日期时间列求和,pandas,datetime,sum,Pandas,Datetime,Sum,例如,我有一个带有两列的datadframe A B 00:01:05 2018-10-10 23:58:10 我想得到第三列C,是a+B的和 A B C 00:01:05 2018-10-10 23:58:10 2018-10-10 23:59:15 如果我这样做: df['C']= df['A'] + df['B']
A B
00:01:05 2018-10-10 23:58:10
我想得到第三列C,是a+B的和
A B C
00:01:05 2018-10-10 23:58:10 2018-10-10 23:59:15
如果我这样做:
df['C']= df['A'] + df['B']
我明白了
这是您的示例数据帧
sample = pd.DataFrame()
sample['A'] = ['00:01:05']
sample['B'] = ['2018-10-10 23:58:10']
将B列转换为pd.Timstamp,将A列转换为pd.Timedelta,如下所示
sample['B'] = pd.to_datetime(sample['B'])
sample['A'] = pd.to_timedelta(sample['A'], unit='m')
然后正常添加列
sample['C'] = sample['B'] + sample['A']
A B C
0 00:01:05 2018-10-10 23:58:10 2018-10-10 23:59:15
这是您的示例数据帧
sample = pd.DataFrame()
sample['A'] = ['00:01:05']
sample['B'] = ['2018-10-10 23:58:10']
将B列转换为pd.Timstamp,将A列转换为pd.Timedelta,如下所示
sample['B'] = pd.to_datetime(sample['B'])
sample['A'] = pd.to_timedelta(sample['A'], unit='m')
然后正常添加列
sample['C'] = sample['B'] + sample['A']
A B C
0 00:01:05 2018-10-10 23:58:10 2018-10-10 23:59:15
将A列转换为时间增量,必要时将B列转换为:
如果列A包含python时间:
df['C'] = pd.to_timedelta(df['A'].astype(str)) + pd.to_datetime(df['B'])
将A列转换为时间增量,必要时将B列转换为:
如果列A包含python时间:
df['C'] = pd.to_timedelta(df['A'].astype(str)) + pd.to_datetime(df['B'])
首先将它们转换为'pd.Timedelta'。首先将它们转换为'pd.Timedelta。