Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python Pandas - สร้างวันที่และเวลาด้วย DateTimeIndex


ในการสร้าง datetime เราจะใช้ date_range() ช่วงเวลาและเขตเวลาจะถูกตั้งค่าด้วยความถี่ด้วย ขั้นแรก นำเข้าไลบรารีที่จำเป็น -

import pandas as pd

DatetimeIndex ที่มีระยะเวลา 8 และความถี่เป็น M คือเดือน เขตเวลาคือ ออสเตรเลีย/ซิดนีย์ −

datetime = pd.date_range('2021-09-24 02:35:55', periods=8, tz='Australia/Sydney', freq='M')

แสดงวันที่และเวลา -

print("DateTime...\n", datetime)

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

import pandas as pd

# DatetimeIndex with period 8 and frequency as M i.e. months
# timezone is Australia/Sydney
datetime = pd.date_range('2021-09-24 02:35:55', periods=8, tz='Australia/Sydney', freq='M')

# display
print("DateTime...\n", datetime)

# get the day name
print("\nGetting the day name..\n",datetime.day_name())

# get the month name
print("\nGetting the month name..\n",datetime.month_name())

# get the year
print("\nGetting the year name..\n",datetime.year)

# get the hour
print("\nGetting the hour..\n",datetime.hour)

# get the minutes
print("\nGetting the minutes..\n",datetime.minute)

# get the seconds
print("\nGetting the seconds..\n",datetime.second)

ผลลัพธ์

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

DateTime...
DatetimeIndex(['2021-09-30 02:35:55+10:00', '2021-10-31 02:35:55+11:00',
               '2021-11-30 02:35:55+11:00', '2021-12-31 02:35:55+11:00',
               '2022-01-31 02:35:55+11:00', '2022-02-28 02:35:55+11:00',
               '2022-03-31 02:35:55+11:00', '2022-04-30 02:35:55+10:00'],
               dtype='datetime64[ns, Australia/Sydney]', freq='M')

Getting the day name..
Index(['Thursday', 'Sunday', 'Tuesday', 'Friday', 'Monday', 'Monday','Thursday', 'Saturday'],
dtype='object')

Getting the month name..
Index(['September', 'October', 'November', 'December', 'January', 'February','March', 'April'], dtype='object')

Getting the year name..
   Int64Index([2021, 2021, 2021, 2021, 2022, 2022, 2022, 2022], dtype='int64')

Getting the hour..
   Int64Index([2, 2, 2, 2, 2, 2, 2, 2], dtype='int64')

Getting the minutes..
   Int64Index([35, 35, 35, 35, 35, 35, 35, 35], dtype='int64')

Getting the seconds..
   Int64Index([55, 55, 55, 55, 55, 55, 55, 55], dtype='int64')