pyarrow datetime怎么确保时间不被改成UTC时间?

新手上路,请多包涵

原始日期格式为

datetime.datetime(2022, 8, 5, 9, 35, tzinfo=tzfile('PRC'))
table = pa.Table.from_pylist(data)
print(table)

输出结果是

pyarrow.Table
date: timestamp[us, tz=PRC]
----
date: [[2022-08-05 01:35:00.000000]]

table时区显示是对的,但是时间改成utc的时间了。
怎么保留时间不被自动转换?

阅读 1.1k
1 个回答
import pyarrow as pa
import pandas as pd
import datetime
from dateutil import tz

# 创建带有时区的 datetime 对象
dt = datetime.datetime(2022, 8, 5, 9, 35, tzinfo=tz.gettz('PRC'))

# 创建 PyArrow 表
table = pa.Table.from_pandas(pd.DataFrame({'date': [dt]}))

# 把 PyArrow 表转换成 Pandas DataFrame
df = table.to_pandas()

# 把时间戳列转换回原始时区
df['date'] = df['date'].dt.tz_convert('PRC')

print(df)
推荐问题