สมมติว่าคุณมีข้อมูลอนุกรมเวลา (time series) และต้องการกำหนดเขตเวลาอาเซีย ผลลัพธ์จะเป็นดังนี้:
Index is: DatetimeIndex(['2020-01-05 00:30:00+05:30', '2020-01-12 00:30:00+05:30', '2020-01-19 00:30:00+05:30', '2020-01-26 00:30:00+05:30', '2020-02-02 00:30:00+05:30'], dtype='datetime64[ns, Asia/Calcutta]', freq='W-SUN')
วิธีแก้ปัญหา
กำหนด DataFrame
สร้างอนุกรมเวลาโดยใช้ฟังก์ชัน
pd.date_range()โดยกำหนด start เป็น '2020-01-01 00:30', periods=5 และ tz = 'Asia/Calcutta' จากนั้นเก็บไว้ในตัวแปร time_index
time_index = pd.date_range('2020-01-01 00:30', periods=5, freq='W', tz='Asia/Calcutta')
กำหนด index ของ DataFrame ให้เป็น time_index ที่มีเขตเวลาท้องถิ่น
df.index = time_index
สุดท้าย พิมพ์เขตเวลาท้องถิ่นที่ได้
ตัวอย่าง
ลองดูโค้ดต่อไปนี้เพื่อเข้าใจได้ดียิ่งขึ้น:
import pandas as pd
df = pd.DataFrame({'Id':[1,2,3,4,5], 'City':['Mumbai','Pune','Delhi','Chennai','Kolkata']})
time_index = pd.date_range('2020-01-01 00:30', periods=5, freq='W', tz='Asia/Calcutta')
df.index = time_index
print("DataFrame is:\n", df)
print("Index is:\n", df.index)
ผลลัพธ์
DataFrame is: Id City 2020-01-05 00:30:00+05:30 1 Mumbai 2020-01-12 00:30:00+05:30 2 Pune 2020-01-19 00:30:00+05:30 3 Delhi 2020-01-26 00:30:00+05:30 4 Chennai 2020-02-02 00:30:00+05:30 5 Kolkata Index is: DatetimeIndex(['2020-01-05 00:30:00+05:30', '2020-01-12 00:30:00+05:30', '2020-01-19 00:30:00+05:30', '2020-01-26 00:30:00+05:30', '2020-02-02 00:30:00+05:30'], dtype='datetime64[ns, Asia/Calcutta]', freq='W-SUN')