Để chuyển đổi mảng datetime thành mảng chuỗi (string) trong NumPy, sử dụng phương thức numpy.datetime_as_string(). Phương thức trả về mảng chuỗi cùng hình dạng với mảng đầu vào. Tham số unit cho phép thiết lập độ chính xác thời gian (ví dụ: giây, phút, giờ).
Tham số chính
- arr (array_like): Mảng timestamp UTC cần định dạng.
- unit (str, tùy chọn): Đơn vị thời gian để thay đổi độ chính xác (ví dụ: 's' cho giây, 'm' cho phút).
Các bước thực hiện
Nhập NumPy:
import numpy as np
Tạo mảng datetime với dtype 'M8[m]' (phút):
# Tạo mảng datetime từ '2022-02-20T02:10', bước 60 phút, 6 phần tử
arr = np.arange('2022-02-20T02:10', 6*60, 60, dtype='M8[m]')
print("Mảng...\n", arr)
# Kiểm tra thuộc tính
print("\nKiểu dữ liệu...\n", arr.dtype)
print("\nSố chiều...\n", arr.ndim)
print("\nHình dạng...\n", arr.shape)
print("\nSố phần tử...\n", arr.size)
# Chuyển đổi sang chuỗi với đơn vị giây ('s')
print("\nKết quả...\n", np.datetime_as_string(arr, unit='s'))
Ví dụ hoàn chỉnh
import numpy as np
# Tạo mảng datetime
arr = np.arange('2022-02-20T02:10', 6*60, 60, dtype='M8[m]')
print("Mảng...\n", arr)
print("\nKiểu dữ liệu...\n", arr.dtype)
print("\nSố chiều...\n", arr.ndim)
print("\nHình dạng...\n", arr.shape)
print("\nSố phần tử...\n", arr.size)
# Chuyển đổi với đơn vị giây
print("\nKết quả...\n", np.datetime_as_string(arr, unit='s'))
Kết quả đầu ra
Mảng...
['2022-02-20T02:10' '2022-02-20T03:10' '2022-02-20T04:10' '2022-02-20T05:10'
'2022-02-20T06:10' '2022-02-20T07:10']
Kiểu dữ liệu...
datetime64[m]
Số chiều...
1
Hình dạng...
(6,)
Số phần tử...
6
Kết quả...
['2022-02-20T02:10:00' '2022-02-20T03:10:00' '2022-02-20T04:10:00'
'2022-02-20T05:10:00' '2022-02-20T06:10:00' '2022-02-20T07:10:00']