Tôi đang có một DataFrame với hai cột. Một cột được lấp đầy với dấu thời gian, cột kia chứa giá trị offset theo giờ UTC của dấu thời gian trong cùng một hàng.Làm thế nào để thiết lập bù đắp của timestamps trong một khung dữ liệu gấu trúc?
Các DataFrame trông như thế này:
In [44]: df
Out[44]:
DATETIME OFFSET
0 2013-01-01 00:00:00+00:00 1
1 2013-01-01 01:00:00+00:00 1
2 2013-01-01 02:00:00+00:00 1
3 2013-01-01 03:00:00+00:00 1
4 2013-01-01 04:00:00+00:00 1
5 2013-01-01 05:00:00+00:00 1
6 2013-01-01 06:00:00+00:00 2
7 2013-01-01 07:00:00+00:00 2
8 2013-01-01 08:00:00+00:00 2
gì tôi muốn đạt được là thêm bù đắp cho mỗi hàng với timestamp:
In [44]: df
Out[44]:
DATETIME OFFSET
0 2013-01-01 00:00:00+01:00 1
1 2013-01-01 01:00:00+01:00 1
2 2013-01-01 02:00:00+01:00 1
3 2013-01-01 03:00:00+01:00 1
4 2013-01-01 04:00:00+01:00 1
5 2013-01-01 05:00:00+01:00 1
6 2013-01-01 06:00:00+02:00 2
7 2013-01-01 07:00:00+02:00 2
8 2013-01-01 08:00:00+02:00 2
tôi đã cố gắng để thay thế với tzinfo nhưng thất bại để tìm một giải pháp thích hợp. Tôi đang suy nghĩ về điều gì đó như sau (mã giả):
df.apply(lambda x: x['DATETIME'].replace(tzinfo=pytz.utc + x['OFFSET'])
Bất kỳ trợ giúp nào được đánh giá cao.
Cảm ơn, Thomas
Có vẻ như bạn muốn làm 't1.tz_convert (9)' (nhưng điều này không hiệu quả!) –