jorisvandenbossche commented on a change in pull request #8559:
URL: https://github.com/apache/arrow/pull/8559#discussion_r516069013



##########
File path: python/pyarrow/tests/test_convert_builtin.py
##########
@@ -2000,6 +2000,17 @@ def 
test_roundtrip_nanosecond_resolution_pandas_temporal_objects():
         pd.Timestamp(9223371273709551616, unit='ns')
     ]
 
+    ty = pa.timestamp('ns', tz='US/Eastern')
+    value = 1604119893000000000
+    arr = pa.array([value], type=ty)
+    data = arr.to_pylist()
+    assert isinstance(data[0], pd.Timestamp)
+    restored = pa.array(data, type=ty)
+    assert arr.equals(restored)
+    assert restored.to_pylist() == [
+        pd.Timestamp(value, unit='ns', tz='US/Eastern')

Review comment:
       ```suggestion
           pd.Timestamp(value, 
unit='ns').tz_localize("UTC").tz_convert('US/Eastern')
   ```
   
   (it's the same, but I find it a bit more explicit, otherwise you need to 
know if pd.Timestamp interprets the integer as wall time or UTC time)

##########
File path: cpp/src/arrow/python/python_to_arrow.cc
##########
@@ -272,11 +272,13 @@ class PyValue {
               return internal::InvalidValue(obj,

Review comment:
       Can you add a comment in the pandas timestamp case a few lines above 
about that case not needing to apply to subtract the offset, because pandas 
timestamps `value` is already nanoseconds in UTC (in contrast to 
datetime.datetime's microseconds)




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to