Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python Pandas - Ceil DateTimeIndex với tần suất micro-giây

Để làm tròn lên (ceil) DateTimeIndex đến tần suất micro-giây, dùng DateTimeIndex.ceil(freq='us').

Các bước thực hiện

1. Import thư viện

import pandas as pd

2. Tạo DateTimeIndex

datetimeindex = pd.date_range(
    '2021-10-18 07:20:32.261811624',
    periods=5,
    tz='Australia/Adelaide',
    freq='40S'
)

3. Ceil micro-giây

print("\nCeil micro-giây...\n",
      datetimeindex.ceil(freq='us'))

Ví dụ hoàn chỉnh

import pandas as pd

datetimeindex = pd.date_range(
    '2021-10-18 07:20:32.261811624',
    periods=5,
    tz='Australia/Adelaide',
    freq='40S'
)

print("DateTimeIndex...\n", datetimeindex)
print("DateTimeIndex frequency...\n", datetimeindex.freq)
print("\nCeil micro-giây...\n",
      datetimeindex.ceil(freq='us'))

Kết quả đầu ra

DateTimeIndex...
DatetimeIndex(['2021-10-18 07:20:32.261811624+10:30', ...],
              dtype='datetime64[ns, Australia/Adelaide]', freq='40S')

Ceil micro-giây...
DatetimeIndex(['2021-10-18 07:20:32.261812+10:30', ...],
              dtype='datetime64[ns, Australia/Adelaide]', freq=None)

Giải thích chi tiết

  • Giá trị gốc: 261811624 nano-giây = 261811.624 micro-giây
  • Ceil micro-giây: làm tròn lên số micro-giây nguyên tiếp theo → 261812 micro-giây
  • Kết quả: .261812 giây (6 chữ số sau dấu phẩy)

So sánh floor/ceil/round micro-giây:

Phép toánKết quả (giây)
Gốc.261811624
floor('us').261811
ceil('us').261812
round('us').261812

Vì phần nano-giây (624) ≥ 500, floor xuống, ceil/round lên.