此代码的目的是读取一个csv文件,该文件的列名为“ DateTime”。
此列上的日期基于不是我的“ EST”时区,因此代码必须将date time列本地化为我的系统时区。
当我尝试此代码时:
import pandas as pd
from datetime import datetime
from pytz import timezone
from tzlocal import get_localzone
df = pd.read_csv(r"C:\Users\Sayed\Desktop\script\data.csv")
print(df)
format = "%Y-%m-%d %H:%M:%S %Z%z"
for date in df['DateTime']:
date = datetime(timezone('EST'))
now_local = date.astimezone(get_localzone())
print(now_local.strftime(format))
我收到此错误:
Traceback (most recent call last):
File "D:/Projects/Tutorial/ff.py", line 10, in <module>
date = datetime(timezone('EST'))
TypeError: an integer is required (got type EST)
答案 0 :(得分:2)
假设let array = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
let start = 2
let end = 3
var result = array.slice(start, end+1);
console.log(result)
列已为DateTime
类型,您可以尝试将tz_localize与tz_convert函数一起使用。
为此替换您datetime
循环:
for
此后,您的df['DateTime'] = df['DateTime'].dt.tz_localize('EST').dt.tz_convert(get_localzone())
列应具有本地时区的日期时间。