8
我想設置一個Pandas DataFrame中列的值的時區。我正在用pandas.read_csv()讀取DataFrame。如何設置Pandas DataFrame中的值的時區?
我想設置一個Pandas DataFrame中列的值的時區。我正在用pandas.read_csv()讀取DataFrame。如何設置Pandas DataFrame中的值的時區?
您可以直接從read_csv
通過手動設置date_parser
功能,例如讀取日期爲UTC:
from dateutil.tz import tzutc
from dateutil.parser import parse
def date_utc(s):
return parse(s, tzinfos=tzutc)
df = read_csv('my.csv', parse_dates=[0], date_parser=date_utc)
。
如果要創建一個時間序列,您可以使用tz
說法date_range
:
dd = pd.date_range('2012-1-1 1:30', periods=3, freq='min', tz='UTC')
In [2]: dd
Out[2]:
<class 'pandas.tseries.index.DatetimeIndex'>
[2012-01-01 01:30:00, ..., 2012-01-01 01:32:00]
Length: 3, Freq: T, Timezone: UTC
。
如果你的數據幀/系列已經是指數一個時間序列,您可以使用tz_localize
方法來設置時區:
df.tz_localize('UTC')
,或者如果它已經有一個時區,使用tz_convert
:
df.tz_convert('UTC')
好點。對不起,我實際上是用pandas.read_csv()讀取DataFrame。 – Yariv
對不起,我沒有意識到我的例子是誤導,直到你回答。 – Yariv
沒關係,我希望現在能回答你的問題:) –