Để trả về Index các chuỗi được định dạng theo format ngày tháng tùy chỉnh từ DateTimeIndex, sử dụng phương thức DateTimeIndex.strftime().
Các bước thực hiện
1. Import thư viện
import pandas as pd
2. Tạo DateTimeIndex
Tần suất 2 ngày, 7 kỳ, múi giờ Australia/Adelaide:
datetimeindex = pd.date_range('2021-10-30 02:30:50', periods=7, tz='Australia/Adelaide', freq='2D')
3. Định dạng với strftime
print("\nĐịnh dạng với các directive:\n", datetimeindex.strftime('%b. %d, %Y was a %A'))
Ví dụ hoàn chỉnh
import pandas as pd
datetimeindex = pd.date_range('2021-10-30 02:30:50', periods=7, tz='Australia/Adelaide', freq='2D')
print("DateTimeIndex:\n", datetimeindex)
print("\nTần suất:", datetimeindex.freq)
# Format: Tháng viết tắt. Ngày, Năm was a Thứ
print("\nĐịnh dạng:\n", datetimeindex.strftime('%b. %d, %Y was a %A'))
Kết quả đầu ra
DateTimeIndex: DatetimeIndex(['2021-10-30 02:30:50+10:30', '2021-11-01 02:30:50+10:30', '2021-11-03 02:30:50+10:30', '2021-11-05 02:30:50+10:30', '2021-11-07 02:30:50+10:30', '2021-11-09 02:30:50+10:30', '2021-11-11 02:30:50+10:30'], dtype='datetime64[ns, Australia/Adelaide]', freq='2D') Tần suất: <2 * Days> Định dạng: Index(['Oct. 30, 2021 was a Saturday', 'Nov. 01, 2021 was a Monday', 'Nov. 03, 2021 was a Wednesday', 'Nov. 05, 2021 was a Friday', 'Nov. 07, 2021 was a Sunday', 'Nov. 09, 2021 was a Tuesday', 'Nov. 11, 2021 was a Thursday'], dtype='object')
Các directive phổ biến
| Directive | Ý nghĩa | Ví dụ |
|---|---|---|
%Y | Năm 4 chữ số | 2021 |
%y | Năm 2 chữ số | 21 |
%m | Tháng 0-padded | 11 |
%b | Tháng viết tắt | Nov |
%B | Tháng đầy đủ | November |
%d | Ngày 0-padded | 03 |
%A | Thứ đầy đủ | Wednesday |
%a | Thứ viết tắt | Wed |
%H | Giờ 24h | 02 |
%M | Phút | 30 |
%S | Giây | 50 |
Lưu ý
- Trả về Index dtype='object' (chuỗi Python).
- Múi giờ được bảo toàn trong biểu diễn nhưng không hiển thị trừ khi dùng
%zhoặc%Z. - Tương đương
datetimeindex.map(lambda x: x.strftime(...))nhưng tối ưu hơn.