Skip to content

Commit 06cf604

Browse files
committed
BUG: align two tz aware frames loses tz #2127
1 parent 5dc9390 commit 06cf604

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

pandas/tseries/index.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -864,7 +864,8 @@ def _wrap_joined_index(self, joined, other):
864864
joined.name = name
865865
return joined
866866
else:
867-
return DatetimeIndex(joined, name=name)
867+
tz = getattr(other, 'tz', None)
868+
return DatetimeIndex(joined, name=name, tz=tz)
868869

869870
def _can_fast_union(self, other):
870871
if not isinstance(other, DatetimeIndex):

pandas/tseries/tests/test_timezones.py

+9
Original file line numberDiff line numberDiff line change
@@ -621,6 +621,15 @@ def test_join_naive_with_aware(self):
621621
self.assertRaises(Exception, ts.__add__, ts_utc)
622622
self.assertRaises(Exception, ts_utc.__add__, ts)
623623

624+
def test_align_aware(self):
625+
idx1 = date_range('2001', periods=5, freq='H', tz='US/Eastern')
626+
idx2 = date_range('2001', periods=5, freq='2H', tz='US/Eastern')
627+
df1 = DataFrame(np.random.randn(len(idx1), 3), idx1)
628+
df2 = DataFrame(np.random.randn(len(idx2), 3), idx2)
629+
new1, new2 = df1.align(df2)
630+
self.assertEqual(df1.index.tz, new1.index.tz)
631+
self.assertEqual(df2.index.tz, new2.index.tz)
632+
624633
def test_equal_join_ensure_utc(self):
625634
rng = date_range('1/1/2011', periods=10, freq='H', tz='US/Eastern')
626635
ts = Series(np.random.randn(len(rng)), index=rng)

0 commit comments

Comments
 (0)