Lấy python múi giờ hiện tại

gấu trúc chứa các khả năng và tính năng mở rộng để làm việc với dữ liệu chuỗi thời gian cho tất cả các miền. Sử dụng các kiểu dữ liệu NumPy

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
75 và
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
76, pandas đã hợp nhất một số lượng lớn các tính năng từ các thư viện Python khác như
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
77 cũng như tạo ra một lượng lớn chức năng mới để thao tác dữ liệu chuỗi thời gian

Ví dụ, gấu trúc hỗ trợ

Phân tích thông tin chuỗi thời gian từ nhiều nguồn và định dạng khác nhau

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]

Tạo chuỗi ngày và khoảng thời gian có tần suất cố định

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']

Thao tác và chuyển đổi ngày giờ với thông tin múi giờ

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']

Lấy mẫu lại hoặc chuyển đổi chuỗi thời gian thành tần số cụ thể

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64

Thực hiện số học ngày và giờ với gia số thời gian tuyệt đối hoặc tương đối

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'

pandas cung cấp một bộ công cụ tương đối nhỏ gọn và khép kín để thực hiện các tác vụ trên và hơn thế nữa

Tổng quan#

gấu trúc nắm bắt 4 khái niệm chung liên quan đến thời gian

  1. Ngày giờ. Một ngày và thời gian cụ thể với hỗ trợ múi giờ. Tương tự như

    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    78 từ thư viện tiêu chuẩn

  2. đồng bằng thời gian. Khoảng thời gian tuyệt đối. Tương tự như

    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    79 từ thư viện tiêu chuẩn

  3. khoảng thời gian. Một khoảng thời gian được xác định bởi một thời điểm và tần số liên quan của nó

  4. ngày offset. Khoảng thời gian tương đối tôn trọng số học lịch. Tương tự như

    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    80 từ gói
    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    81

Ý tưởng

lớp vô hướng

Lớp mảng

kiểu dữ liệu gấu trúc

Phương pháp tạo chính

Ngày giờ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
84 hoặc
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
85

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
86 hoặc
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
87

đồng bằng thời gian

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
88

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
89

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
90

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
91 hoặc
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
92

khoảng thời gian

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
95

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 hoặc
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
97

ngày offset

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
98

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
99

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
99

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
98

Đối với dữ liệu chuỗi thời gian, thông thường sẽ biểu thị thành phần thời gian trong chỉ mục của

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 hoặc
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03 để có thể thực hiện các thao tác đối với phần tử thời gian

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
4

Tuy nhiên,

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 và
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03 cũng có thể trực tiếp hỗ trợ thành phần thời gian dưới dạng chính dữ liệu

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
7

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 và
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03 đã mở rộng chức năng và hỗ trợ kiểu dữ liệu cho dữ liệu
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
08,
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
09 và
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 khi được chuyển vào các hàm tạo đó. Dữ liệu
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
98 tuy nhiên sẽ được lưu trữ dưới dạng dữ liệu
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
12

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
5

Cuối cùng, gấu trúc đại diện cho thời gian ngày không có giá trị, đồng bằng thời gian và khoảng thời gian là

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
13, hữu ích để biểu thị các giá trị giống như ngày bị thiếu hoặc không có giá trị và hoạt động tương tự như
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
14 đối với dữ liệu float

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
8

Dấu thời gian so với. khoảng thời gian #

Dữ liệu có dấu thời gian là loại dữ liệu chuỗi thời gian cơ bản nhất liên kết các giá trị với các điểm theo thời gian. Đối với các đối tượng gấu trúc, điều đó có nghĩa là sử dụng các điểm theo thời gian

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
9

Tuy nhiên, trong nhiều trường hợp, thay vào đó, việc liên kết những thứ như thay đổi biến với một khoảng thời gian sẽ tự nhiên hơn. Khoảng thời gian được đại diện bởi

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 có thể được chỉ định rõ ràng hoặc được suy ra từ định dạng chuỗi ngày giờ

Ví dụ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
0

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 và
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 có thể dùng làm chỉ mục. Danh sách của
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 và
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 được tự động ép buộc thành
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 và
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 tương ứng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
1

gấu trúc cho phép bạn chụp cả hai biểu diễn và chuyển đổi giữa chúng. Về cơ bản, pandas đại diện cho dấu thời gian bằng cách sử dụng các phiên bản của

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 và chuỗi dấu thời gian bằng cách sử dụng các phiên bản của
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83. Đối với các khoảng thời gian thông thường, gấu trúc sử dụng các đối tượng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 cho các giá trị vô hướng và
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 cho các chuỗi khoảng thời gian. Hỗ trợ tốt hơn cho các khoảng thời gian không đều với điểm bắt đầu và điểm kết thúc tùy ý sắp ra mắt trong các bản phát hành trong tương lai

Đang chuyển đổi thành dấu thời gian#

Để chuyển đổi một đối tượng giống như danh sách hoặc

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 của các đối tượng giống như ngày tháng e. g. chuỗi, kỷ nguyên hoặc hỗn hợp, bạn có thể sử dụng hàm
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
86. Khi được thông qua một
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02, điều này trả về một
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 [có cùng chỉ mục], trong khi một danh sách giống như được chuyển đổi thành một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
2

Nếu bạn sử dụng ngày bắt đầu bằng ngày đầu tiên [tôi. e. phong cách châu Âu], bạn có thể vượt qua cờ

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
31

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
3

Cảnh báo

Bạn thấy trong ví dụ trên rằng

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
31 không nghiêm ngặt. Nếu một ngày không thể được phân tích cú pháp với ngày đầu tiên, nó sẽ được phân tích cú pháp như thể
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
31 là Sai và trong trường hợp phân tích cú pháp các chuỗi ngày được phân tách [e. g.
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
34] thì một cảnh báo cũng sẽ được đưa ra

Nếu bạn chuyển một chuỗi đơn tới

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
86, nó sẽ trả về một chuỗi đơn
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82.
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 cũng có thể chấp nhận đầu vào chuỗi, nhưng nó không chấp nhận các tùy chọn phân tích cú pháp chuỗi như
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
31 hoặc
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
39, vì vậy hãy sử dụng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
86 nếu những tùy chọn này được yêu cầu

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
4

Bạn cũng có thể sử dụng trực tiếp hàm tạo

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
5

Chuỗi 'suy luận' có thể được chuyển để đặt tần suất của chỉ mục làm tần suất được suy luận khi tạo

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
6

Cung cấp một đối số định dạng #

Ngoài chuỗi ngày giờ được yêu cầu, một đối số

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
39 có thể được chuyển để đảm bảo phân tích cú pháp cụ thể. Điều này cũng có khả năng tăng tốc độ chuyển đổi đáng kể

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
7

Để biết thêm thông tin về các lựa chọn khả dụng khi chỉ định tùy chọn

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
39, hãy xem tài liệu về thời gian của Python

Lắp ráp datetime từ nhiều cột DataFrame#

Bạn cũng có thể chuyển một

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03 cột số nguyên hoặc chuỗi để tập hợp thành một
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 của
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
46

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
8

Bạn chỉ có thể vượt qua các cột mà bạn cần lắp ráp

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
9

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
47 tìm kiếm các chỉ định tiêu chuẩn của thành phần ngày giờ trong tên cột, bao gồm

  • yêu cầu. ________ 548, ________ 549, ________ 550

  • không bắt buộc.

    In [6]: dti = dti.tz_localize["UTC"]
    
    In [7]: dti
    Out[7]: 
    DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
                   '2018-01-01 02:00:00+00:00'],
                  dtype='datetime64[ns, UTC]', freq='H']
    
    In [8]: dti.tz_convert["US/Pacific"]
    Out[8]: 
    DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
                   '2017-12-31 18:00:00-08:00'],
                  dtype='datetime64[ns, US/Pacific]', freq='H']
    
    51,
    In [6]: dti = dti.tz_localize["UTC"]
    
    In [7]: dti
    Out[7]: 
    DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
                   '2018-01-01 02:00:00+00:00'],
                  dtype='datetime64[ns, UTC]', freq='H']
    
    In [8]: dti.tz_convert["US/Pacific"]
    Out[8]: 
    DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
                   '2017-12-31 18:00:00-08:00'],
                  dtype='datetime64[ns, US/Pacific]', freq='H']
    
    52,
    In [6]: dti = dti.tz_localize["UTC"]
    
    In [7]: dti
    Out[7]: 
    DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
                   '2018-01-01 02:00:00+00:00'],
                  dtype='datetime64[ns, UTC]', freq='H']
    
    In [8]: dti.tz_convert["US/Pacific"]
    Out[8]: 
    DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
                   '2017-12-31 18:00:00-08:00'],
                  dtype='datetime64[ns, US/Pacific]', freq='H']
    
    53,
    In [6]: dti = dti.tz_localize["UTC"]
    
    In [7]: dti
    Out[7]: 
    DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
                   '2018-01-01 02:00:00+00:00'],
                  dtype='datetime64[ns, UTC]', freq='H']
    
    In [8]: dti.tz_convert["US/Pacific"]
    Out[8]: 
    DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
                   '2017-12-31 18:00:00-08:00'],
                  dtype='datetime64[ns, US/Pacific]', freq='H']
    
    54,
    In [6]: dti = dti.tz_localize["UTC"]
    
    In [7]: dti
    Out[7]: 
    DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
                   '2018-01-01 02:00:00+00:00'],
                  dtype='datetime64[ns, UTC]', freq='H']
    
    In [8]: dti.tz_convert["US/Pacific"]
    Out[8]: 
    DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
                   '2017-12-31 18:00:00-08:00'],
                  dtype='datetime64[ns, US/Pacific]', freq='H']
    
    55,
    In [6]: dti = dti.tz_localize["UTC"]
    
    In [7]: dti
    Out[7]: 
    DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
                   '2018-01-01 02:00:00+00:00'],
                  dtype='datetime64[ns, UTC]', freq='H']
    
    In [8]: dti.tz_convert["US/Pacific"]
    Out[8]: 
    DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
                   '2017-12-31 18:00:00-08:00'],
                  dtype='datetime64[ns, US/Pacific]', freq='H']
    
    56

Dữ liệu không hợp lệ

Hành vi mặc định,

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
57, là tăng khi không thể phân tích cú pháp

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
0

Vượt qua

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
58 để trả về đầu vào ban đầu khi không thể phân tích cú pháp

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
1

Vượt qua

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
59 để chuyển đổi dữ liệu không thể phân tích cú pháp thành
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
13 [không phải thời gian]

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
2

Dấu thời gian Epoch#

gấu trúc hỗ trợ chuyển đổi thời gian số nguyên hoặc số float thành

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 và
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83. Đơn vị mặc định là nano giây, vì đó là cách các đối tượng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 được lưu trữ bên trong. Tuy nhiên, các kỷ nguyên thường được lưu trữ trong một
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
64 khác có thể được chỉ định. Chúng được tính toán từ điểm bắt đầu được chỉ định bởi tham số
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
65

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
3

Ghi chú

Tham số

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
64 không sử dụng các chuỗi giống như tham số
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
39 đã được thảo luận ở trên ]. Các đơn vị có sẵn được liệt kê trên tài liệu cho
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
68.

Thay đổi trong phiên bản 1. 0. 0

Xây dựng một

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 hoặc
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 với dấu thời gian epoch với đối số
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
71 được chỉ định sẽ làm tăng ValueError. Nếu bạn có các kỷ nguyên trong thời gian treo tường ở múi giờ khác, bạn có thể đọc các kỷ nguyên dưới dạng dấu thời gian không có múi giờ và sau đó bản địa hóa thành múi giờ thích hợp

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
4

Ghi chú

Thời gian Epoch sẽ được làm tròn đến nano giây gần nhất

Cảnh báo

Chuyển đổi thời gian trôi nổi có thể dẫn đến kết quả không chính xác và không mong muốn. Python float có độ chính xác khoảng 15 chữ số ở dạng thập phân. Làm tròn trong quá trình chuyển đổi từ float sang độ chính xác cao

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 là không thể tránh khỏi. Cách duy nhất để đạt được độ chính xác chính xác là sử dụng các loại chiều rộng cố định [e. g. một int64].

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
5

Xem thêm

Sử dụng tham số gốc

Từ dấu thời gian đến kỷ nguyên #

Để đảo ngược thao tác ở trên, cụ thể là chuyển đổi từ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 sang kỷ nguyên 'unix'

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
6

Chúng tôi trừ đi kỷ nguyên [nửa đêm ngày 1 tháng 1 năm 1970 UTC] và sau đó chia sàn cho “đơn vị” [1 giây]

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
7

Sử dụng tham số
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
65#

Sử dụng tham số

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
65, người ta có thể chỉ định một điểm bắt đầu thay thế để tạo một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83. Ví dụ: để sử dụng 1960-01-01 làm ngày bắt đầu

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
8

Giá trị mặc định được đặt là

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
77, giá trị mặc định là
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
78. Thường được gọi là thời gian 'unix epoch' hoặc POSIX

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
9

Đang tạo phạm vi dấu thời gian#

Để tạo chỉ mục có dấu thời gian, bạn có thể sử dụng hàm tạo

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 hoặc
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
80 và chuyển vào danh sách đối tượng ngày giờ

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
0

Trong thực tế, điều này trở nên rất cồng kềnh vì chúng ta thường cần một chỉ mục rất dài với một số lượng lớn dấu thời gian. Nếu chúng ta cần dấu thời gian với tần suất thường xuyên, chúng ta có thể sử dụng các hàm

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
81 và
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
82 để tạo một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83. Tần suất mặc định cho
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
87 là ngày dương lịch trong khi mặc định cho
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
85 là ngày làm việc

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
1

Các chức năng tiện lợi như

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
87 và
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
85 có thể sử dụng nhiều bí danh tần số .

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
2

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
87 và
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
85 giúp dễ dàng tạo phạm vi ngày bằng cách sử dụng các kết hợp tham số khác nhau như ________ 590, ________ 591, ________ 592 và ________ 593. Ngày bắt đầu và ngày kết thúc được bao gồm một cách nghiêm ngặt, vì vậy các ngày nằm ngoài những ngày được chỉ định sẽ không được tạo

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
3

Việc chỉ định

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
90,
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
91 và
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
92 sẽ tạo ra một phạm vi ngày cách đều nhau từ
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
90 đến
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
91, với số phần tử
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
92 trong kết quả là
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
4

Dải tần số tùy chỉnh#

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
85 cũng có thể tạo phạm vi ngày tần suất tùy chỉnh bằng cách sử dụng tham số
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
02 và
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
03. Các thông số này sẽ chỉ được sử dụng nếu một chuỗi tần số tùy chỉnh được chuyển

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
5

Xem thêm

ngày làm việc tùy chỉnh

Giới hạn dấu thời gian#

Do gấu trúc biểu thị dấu thời gian ở độ phân giải nano giây nên khoảng thời gian có thể được biểu thị bằng số nguyên 64 bit bị giới hạn trong khoảng 584 năm

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
6

Xem thêm

Đại diện cho các khoảng ngoài giới hạn

Lập chỉ mục #

Một trong những ứng dụng chính của

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 là làm chỉ mục cho các đối tượng gấu trúc. Lớp
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 chứa nhiều tối ưu hóa liên quan đến chuỗi thời gian

  • Một phạm vi ngày rộng lớn cho các khoảng thời gian bù trừ khác nhau được tính toán trước và lưu vào bộ đệm ẩn để tạo ra các phạm vi ngày tiếp theo rất nhanh [chỉ cần lấy một lát]

  • Dịch chuyển nhanh bằng phương thức

    In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]
    
    In [10]: ts = pd.Series[range[len[idx]], index=idx]
    
    In [11]: ts
    Out[11]: 
    2018-01-01 00:00:00    0
    2018-01-01 01:00:00    1
    2018-01-01 02:00:00    2
    2018-01-01 03:00:00    3
    2018-01-01 04:00:00    4
    Freq: H, dtype: int64
    
    In [12]: ts.resample["2H"].mean[]
    Out[12]: 
    2018-01-01 00:00:00    0.5
    2018-01-01 02:00:00    2.5
    2018-01-01 04:00:00    4.0
    Freq: 2H, dtype: float64
    
    06 trên các đối tượng gấu trúc

  • Việc kết hợp các đối tượng

    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    83 chồng chéo có cùng tần số diễn ra rất nhanh [quan trọng đối với việc căn chỉnh dữ liệu nhanh]

  • Truy cập nhanh vào các trường ngày thông qua các thuộc tính như

    In [6]: dti = dti.tz_localize["UTC"]
    
    In [7]: dti
    Out[7]: 
    DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
                   '2018-01-01 02:00:00+00:00'],
                  dtype='datetime64[ns, UTC]', freq='H']
    
    In [8]: dti.tz_convert["US/Pacific"]
    Out[8]: 
    DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
                   '2017-12-31 18:00:00-08:00'],
                  dtype='datetime64[ns, US/Pacific]', freq='H']
    
    48,
    In [6]: dti = dti.tz_localize["UTC"]
    
    In [7]: dti
    Out[7]: 
    DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
                   '2018-01-01 02:00:00+00:00'],
                  dtype='datetime64[ns, UTC]', freq='H']
    
    In [8]: dti.tz_convert["US/Pacific"]
    Out[8]: 
    DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
                   '2017-12-31 18:00:00-08:00'],
                  dtype='datetime64[ns, US/Pacific]', freq='H']
    
    49, v.v.

  • Các chức năng chính quy hóa như ________ 610 và logic ________ 611 rất nhanh

Các đối tượng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 có tất cả các chức năng cơ bản của các đối tượng
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
80 thông thường và một loạt các phương pháp cụ thể theo chuỗi thời gian nâng cao để xử lý tần số dễ dàng

Xem thêm

Phương pháp lập chỉ mục lại

Ghi chú

Mặc dù gấu trúc không bắt buộc bạn phải có chỉ mục ngày được sắp xếp, nhưng một số phương pháp này có thể có hành vi không mong muốn hoặc không chính xác nếu ngày chưa được sắp xếp

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 có thể được sử dụng như một chỉ mục thông thường và cung cấp tất cả các chức năng thông minh của nó như lựa chọn, cắt lát, v.v.

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
7

Lập chỉ mục chuỗi một phần #

Ngày và chuỗi phân tích thành dấu thời gian có thể được chuyển thành tham số lập chỉ mục

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
8

Để thuận tiện cho việc truy cập chuỗi thời gian dài hơn, bạn cũng có thể chuyển năm hoặc năm và tháng dưới dạng chuỗi

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
9

Kiểu cắt này cũng sẽ hoạt động trên

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03 với
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83. Vì lựa chọn một phần chuỗi là một dạng cắt nhãn nên các điểm cuối sẽ được đưa vào. Điều này sẽ bao gồm thời gian phù hợp vào một ngày bao gồm

Cảnh báo

Lập chỉ mục các hàng

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03 bằng một chuỗi với getitem [e. g.
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
18] không được dùng nữa bắt đầu với gấu trúc 1. 2. 0 [do sự mơ hồ cho dù nó đang lập chỉ mục các hàng hay chọn một cột] và sẽ bị xóa trong phiên bản tương lai. Tương đương với
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
19 [e. g.
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
20] vẫn được hỗ trợ

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
0

Điều này bắt đầu vào lần đầu tiên trong tháng và bao gồm ngày và giờ cuối cùng trong tháng

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
1

Điều này chỉ định thời gian dừng bao gồm tất cả thời gian vào ngày cuối cùng

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
2

Điều này chỉ định thời gian dừng chính xác [và không giống như ở trên]

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
3

Chúng tôi đang dừng ở điểm cuối được bao gồm vì nó là một phần của chỉ mục

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
4

Chỉ mục chuỗi một phần của

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 cũng hoạt động trên
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03 với
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
23

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
5

Mới trong phiên bản 0. 25. 0

Cắt lát với lập chỉ mục chuỗi cũng tôn vinh phần bù UTC

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
6

lát vs. kết hợp chuẩn xác#

Cùng một chuỗi được sử dụng làm tham số lập chỉ mục có thể được coi là một lát cắt hoặc khớp chính xác tùy thuộc vào độ phân giải của chỉ mục. Nếu chuỗi kém chính xác hơn chỉ mục, nó sẽ được coi là một lát cắt, nếu không thì sẽ được coi là khớp chính xác

Xem xét một đối tượng

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 với chỉ số độ phân giải phút

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
7

Chuỗi dấu thời gian kém chính xác hơn một phút cho đối tượng

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
8

Một chuỗi dấu thời gian có độ phân giải phút [hoặc chính xác hơn], thay vào đó đưa ra một đại lượng vô hướng, i. e. nó không được đúc thành một lát

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
9

Nếu độ phân giải chỉ mục là thứ hai, thì dấu thời gian chính xác theo phút sẽ cho kết quả

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
40

Nếu chuỗi dấu thời gian được coi là một lát cắt, nó cũng có thể được sử dụng để lập chỉ mục cho

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03 với
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
28

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
41

Cảnh báo

Tuy nhiên, nếu chuỗi được coi là đối sánh chính xác, lựa chọn trong

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
30 của
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03 sẽ là theo cột chứ không phải theo hàng, hãy xem Khái niệm cơ bản về lập chỉ mục. For example
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
31 will raise
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
32 as
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
33 has the same resolution as the index and there is no column with such name:

Để luôn có lựa chọn rõ ràng, cho dù hàng được coi là một lát cắt hay một lựa chọn duy nhất, hãy sử dụng

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
19

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
42

Cũng lưu ý rằng độ phân giải

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 không thể kém chính xác hơn ngày

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
43

Lập chỉ mục chính xác#

Như đã thảo luận trong phần trước, việc lập chỉ mục một

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 với một phần chuỗi phụ thuộc vào “độ chính xác” của khoảng thời gian, nói cách khác, mức độ cụ thể của khoảng thời gian liên quan đến độ phân giải của chỉ mục. Ngược lại, lập chỉ mục với các đối tượng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 hoặc
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
08 là chính xác, bởi vì các đối tượng có ý nghĩa chính xác. Chúng cũng tuân theo ngữ nghĩa bao gồm cả hai điểm cuối

Các đối tượng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 và
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
08 này có chính xác
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
41 và
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
42, mặc dù chúng không được chỉ định rõ ràng [chúng là
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
43]

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
44

không có mặc định

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
45

Cắt bớt & lập chỉ mục ưa thích #

Chức năng tiện ích

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
44 được cung cấp tương tự như cắt lát. Lưu ý rằng
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
45 giả định một giá trị 0 cho bất kỳ thành phần ngày không xác định nào trong một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 trái ngược với cắt lát trả về bất kỳ ngày khớp một phần nào

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
46

Ngay cả việc lập chỉ mục ưa thích phức tạp phá vỡ tính đều đặn của tần số

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 sẽ dẫn đến một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83, mặc dù tần số bị mất

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
47

Thành phần thời gian/ngày#

Có một số thuộc tính thời gian/ngày mà người ta có thể truy cập từ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 hoặc tập hợp các dấu thời gian như
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83

Tài sản

Sự mô tả

năm

Năm của ngày giờ

tháng

Tháng của ngày giờ

ngày

Những ngày của datetime

giờ

Giờ của ngày giờ

phút

Biên bản của ngày giờ

thứ hai

Giây của ngày giờ

phần triệu giây

Micro giây của ngày giờ

nano giây

Nano giây của ngày giờ

ngày

Trả về ngày giờ. ngày [không chứa thông tin múi giờ]

thời gian

Trả về ngày giờ. thời gian [không chứa thông tin múi giờ]

múi giờ

Trả về ngày giờ. thời gian là giờ địa phương với thông tin múi giờ

ngày của năm

Ngày thường trong năm

ngày_của_năm

Ngày thường trong năm

tuần của năm

Thứ tự tuần của năm

tuần

Thứ tự tuần của năm

ngày trong tuần

Số ngày trong tuần với Thứ hai = 0, Chủ nhật = 6

ngày trong tuần

Số ngày trong tuần với Thứ hai = 0, Chủ nhật = 6

ngày thường

Số ngày trong tuần với Thứ hai = 0, Chủ nhật = 6

phần tư

Quý của ngày. Tháng 1-tháng 3 = 1, tháng 4-tháng 6 = 2, v.v.

ngày_trong_tháng

Số ngày trong tháng của datetime

là_tháng_bắt đầu

Logic chỉ ra nếu ngày đầu tiên của tháng [được xác định theo tần suất]

là_tháng_cuối

Logic chỉ ra nếu ngày cuối cùng của tháng [được xác định theo tần suất]

is_quý_bắt đầu

Chỉ báo logic nếu ngày đầu tiên của quý [được xác định theo tần suất]

is_ quarter_end

Logic chỉ ra nếu ngày cuối cùng của quý [được xác định theo tần suất]

is_year_start

Logic chỉ ra nếu ngày đầu tiên của năm [được xác định bởi tần suất]

là_năm_cuối

Logic chỉ ra nếu ngày cuối cùng của năm [được xác định bởi tần suất]

is_leap_year

Logic chỉ ra nếu ngày thuộc về một năm nhuận

Hơn nữa, nếu bạn có một

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 với các giá trị kiểu dữ liệu thời gian, thì bạn có thể truy cập các thuộc tính này thông qua trình truy cập
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
52, như được trình bày chi tiết trong phần trên . trình truy cập dt .

Mới trong phiên bản 1. 1. 0

Bạn có thể lấy các thành phần năm, tuần và ngày của năm ISO từ tiêu chuẩn ISO 8601

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
48

đối tượng DateOffset#

Trong các ví dụ trước, các chuỗi tần số [e. g.

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
53] đã được sử dụng để chỉ định tần suất được xác định

  • cách ngày giờ trong

    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    83 được đặt cách nhau khi sử dụng
    In [6]: dti = dti.tz_localize["UTC"]
    
    In [7]: dti
    Out[7]: 
    DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
                   '2018-01-01 02:00:00+00:00'],
                  dtype='datetime64[ns, UTC]', freq='H']
    
    In [8]: dti.tz_convert["US/Pacific"]
    Out[8]: 
    DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
                   '2017-12-31 18:00:00-08:00'],
                  dtype='datetime64[ns, US/Pacific]', freq='H']
    
    81

  • tần số của một

    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    93 hoặc
    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    94

Các chuỗi tần số này ánh xạ tới một đối tượng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
98 và các lớp con của nó. Một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
98 tương tự như một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
88 đại diện cho một khoảng thời gian nhưng tuân theo các quy tắc về thời lượng lịch cụ thể. Ví dụ: ngày
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
88 sẽ luôn tăng
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
62 theo 24 giờ, trong khi ngày
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
98 sẽ tăng
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
62 vào cùng thời điểm của ngày hôm sau cho dù một ngày có 23, 24 hay 25 giờ do tiết kiệm thời gian ban ngày. Tuy nhiên, tất cả các phân lớp
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
98 có thời lượng một giờ hoặc nhỏ hơn [
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
66,
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
67,
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
68,
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
69,
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
70,
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
71] hoạt động giống như
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
88 và tôn trọng thời gian tuyệt đối

Cơ bản ________ 098 hoạt động tương tự như ________ 674 [tài liệu tương đối về đồng bằng] thay đổi ngày giờ theo khoảng thời gian lịch tương ứng được chỉ định. Toán tử số học [

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
75] có thể được sử dụng để thực hiện ca

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
49

Hầu hết

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
76 có chuỗi tần số liên quan hoặc bí danh bù, có thể được chuyển vào đối số từ khóa
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
93. Bạn có thể tìm thấy các giá trị bù ngày khả dụng và các chuỗi tần số liên quan bên dưới

Bù trừ ngày tháng

Chuỗi tần số

Sự mô tả

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
98

Không có

Lớp bù chung, mặc định là 24 giờ tuyệt đối

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
79 hoặc
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
80

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
81

ngày làm việc [ngày thường]

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
82 hoặc
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
83

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
84

ngày làm việc tùy chỉnh

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
85

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
86

một tuần, tùy chọn neo vào một ngày trong tuần

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
87

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
88

ngày x của tuần thứ y mỗi tháng

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
89

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
90

ngày x của tuần cuối mỗi tháng

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
91

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
92

lịch cuối tháng

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
93

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
94

tháng dương lịch bắt đầu

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
95 hoặc
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
96

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
97

cuối tháng kinh doanh

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
98 hoặc
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
99

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
00

tháng làm việc bắt đầu

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
01 hoặc
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
02

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
03

cuối tháng kinh doanh tùy chỉnh

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
04 hoặc
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
05

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
06

tháng kinh doanh tùy chỉnh bắt đầu

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
07

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
08

ngày 15 [hoặc ngày_của_tháng] và cuối tháng dương lịch

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
09

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
10

Ngày 15 [hoặc ngày_of_tháng khác] và tháng dương lịch bắt đầu

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
11

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
12

lịch cuối quý

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
13

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
14

bắt đầu quý dương lịch

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
15

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
16

cuối quý kinh doanh

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
17

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
18

bắt đầu quý kinh doanh

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
19

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
20

quý bán lẻ [hay còn gọi là tuần 52-53]

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
21

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
22

cuối năm dương lịch

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
23

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
24 hoặc
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
25

năm dương lịch bắt đầu

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
26

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
27

kinh doanh cuối năm

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
28

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
29

năm kinh doanh bắt đầu

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
30

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
31

bán lẻ [aka 52-53 tuần] năm

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
32

Không có

lễ Phục sinh

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
33

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
34

giờ làm việc

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
35

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
36

giờ làm việc tùy chỉnh

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
37

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
53

một ngày tuyệt đối

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
66

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
40

một giờ

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
67

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
42 hoặc
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
43

một phút

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
68

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
45

một giây

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
69

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
47 hoặc
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
48

một phần nghìn giây

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
70

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
50 hoặc
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
51

một phần triệu giây

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
71

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
53

một nano giây

Ngoài ra,

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
76 có các phương pháp
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
55 và
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
56 để di chuyển ngày tới hoặc lùi tương ứng với ngày bù hợp lệ so với ngày bù. Ví dụ: bù trừ doanh nghiệp sẽ chuyển các ngày rơi vào cuối tuần [thứ Bảy và Chủ nhật] sang thứ Hai vì bù trừ doanh nghiệp hoạt động vào các ngày trong tuần

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
70

Các thao tác này bảo toàn thông tin thời gian [giờ, phút, v.v.] theo mặc định. Để đặt lại thời gian về nửa đêm, hãy sử dụng

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
57 trước hoặc sau khi áp dụng thao tác [tùy thuộc vào việc bạn có muốn đưa thông tin thời gian vào thao tác hay không]

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
71

Độ lệch tham số #

Một số phần bù có thể được "tham số hóa" khi được tạo để dẫn đến các hành vi khác nhau. Ví dụ: phần bù

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
85 để tạo dữ liệu hàng tuần chấp nhận tham số
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
59 dẫn đến ngày được tạo luôn nằm trên một ngày cụ thể trong tuần

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
72

Tùy chọn

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
60 sẽ có hiệu lực đối với phép cộng và phép trừ

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
73

Một ví dụ khác là tham số hóa

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
21 với tháng kết thúc cụ thể

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
74

Sử dụng hiệu số với
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 /
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83#

Offset có thể được sử dụng với

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 hoặc
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 để áp dụng offset cho từng phần tử

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
75

Nếu lớp offset ánh xạ trực tiếp tới một

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
88 [
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
37,
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
66,
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
67,
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
68,
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
70,
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
69,
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
71] thì nó có thể được sử dụng chính xác như một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
88 - xem Timedelta . for more examples.

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
76

Lưu ý rằng một số độ lệch [chẳng hạn như

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
15] không có triển khai véc tơ. Chúng vẫn có thể được sử dụng nhưng có thể tính toán chậm hơn đáng kể và sẽ hiển thị
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
76

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
77

ngày làm việc tùy chỉnh#

Lớp

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
82 hoặc
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
83 cung cấp lớp tham số
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
80 có thể được sử dụng để tạo lịch ngày làm việc tùy chỉnh có tính đến các ngày lễ địa phương và quy ước cuối tuần địa phương

Như một ví dụ thú vị, hãy xem Ai Cập nơi có ngày cuối tuần từ Thứ Sáu đến Thứ Bảy

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
78

Hãy ánh xạ tới tên các ngày trong tuần

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
79

Lịch nghỉ lễ có thể được sử dụng để cung cấp danh sách ngày lễ. Xem phần lịch nghỉ lễ để biết thêm thông tin.

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
50

Có thể xác định chênh lệch hàng tháng theo lịch nghỉ lễ nhất định theo cách thông thường

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
51

Ghi chú

Chuỗi tần suất 'C' được sử dụng để chỉ ra rằng một CustomBusinessDay DateOffset được sử dụng, điều quan trọng cần lưu ý là vì CustomBusinessDay là một loại được tham số hóa nên các phiên bản của CustomBusinessDay có thể khác và điều này không thể phát hiện được từ chuỗi tần số 'C'. Do đó, người dùng cần đảm bảo rằng chuỗi tần số 'C' được sử dụng nhất quán trong ứng dụng của người dùng

Giờ làm việc#

Lớp ________ 733 cung cấp biểu diễn giờ làm việc trên ________ 680, cho phép sử dụng thời gian bắt đầu và kết thúc cụ thể

Theo mặc định,

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
33 sử dụng 9. 00 - 17. 00 dưới dạng giờ làm việc. Thêm
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
33 sẽ tăng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 theo tần suất hàng giờ. Nếu mục tiêu
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 ngoài giờ làm việc, hãy chuyển sang giờ làm việc tiếp theo rồi tăng dần. Nếu kết quả vượt quá giờ làm việc kết thúc, số giờ còn lại sẽ được cộng vào ngày làm việc tiếp theo

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
52

Bạn cũng có thể chỉ định thời gian

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
90 và
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
91 theo từ khóa. Đối số phải là một
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
88 với một đại diện
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
89 hoặc một thể hiện
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
90. Chỉ định giây, micro giây và nano giây làm kết quả giờ làm việc trong
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
91

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
53

Vượt qua thời gian của

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
90 muộn hơn thời gian của
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
91 thể hiện giờ làm việc lúc nửa đêm. Trong trường hợp này, giờ làm việc vượt quá nửa đêm và trùng lặp sang ngày hôm sau. Giờ làm việc hợp lệ được phân biệt bằng việc nó có bắt đầu từ
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
80 hợp lệ hay không

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
54

Áp dụng

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
95 và
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
96 ngoài giờ làm việc dẫn đến bắt đầu giờ làm việc tiếp theo hoặc kết thúc của ngày hôm trước. Khác với các hiệu số khác, theo định nghĩa,
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
95 có thể tạo ra các kết quả khác với
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
98

Điều này là do giờ kết thúc làm việc của một ngày bằng với giờ bắt đầu làm việc của ngày hôm sau. Ví dụ: theo giờ làm việc mặc định [9. 00 - 17. 00], không có khoảng cách [0 phút] giữa

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
99 và
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
400

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
55

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
33 coi thứ bảy và chủ nhật là ngày nghỉ. Để sử dụng các ngày lễ tùy ý, bạn có thể sử dụng phần bù
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
35, như được giải thích trong tiểu mục sau

Giờ làm việc tùy chỉnh#

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
35 là sự kết hợp giữa
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
33 và
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
83, cho phép bạn chỉ định các ngày lễ tùy ý.
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
35 hoạt động giống như
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
33 ngoại trừ việc nó bỏ qua các ngày lễ tùy chỉnh được chỉ định

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
56

Bạn có thể sử dụng các đối số từ khóa được hỗ trợ bởi

In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
33 và
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
83

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
57

Bí danh bù trừ #

Một số bí danh chuỗi được cung cấp cho các tần số chuỗi thời gian chung hữu ích. Chúng tôi sẽ gọi những bí danh này là bí danh bù

bí danh

Sự mô tả

B

tần suất ngày làm việc

C

tần suất ngày làm việc tùy chỉnh

D

tần suất ngày dương lịch

W

tần suất hàng tuần

M

tần suất cuối tháng

SM

tần suất nửa tháng cuối [ngày 15 và cuối tháng]

BM

tần suất cuối tháng làm việc

CBM

tần suất cuối tháng kinh doanh tùy chỉnh

tần suất bắt đầu tháng

tin nhắn

tần suất bắt đầu nửa tháng [ngày 1 và ngày 15]

BMS

tần suất bắt đầu tháng làm việc

CBMS

tần suất bắt đầu tháng làm việc tùy chỉnh

Q

tần suất cuối quý

BQ

tần suất cuối quý kinh doanh

QS

tần suất bắt đầu quý

BQS

tần suất bắt đầu quý kinh doanh

Một, Y

tần suất cuối năm

ĐỨA BÉ

tần suất cuối năm kinh doanh

NHƯ, YS

tần suất bắt đầu năm

CƠ SỞ, BẰNG

tần suất bắt đầu năm kinh doanh

BH

tần suất giờ làm việc

H

tần suất hàng giờ

T, phút

tần suất nhỏ

S

tần số thứ hai

l, ms

mili giây

bạn, chúng tôi

micro giây

N

nano giây

Ghi chú

Khi sử dụng các bí danh offset ở trên, cần lưu ý rằng các hàm như

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
81,
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
82, sẽ chỉ trả về dấu thời gian nằm trong khoảng thời gian được xác định bởi
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
412 và
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
413. Nếu
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
412 không tương ứng với tần suất, dấu thời gian được trả về sẽ bắt đầu ở dấu thời gian hợp lệ tiếp theo, tương tự đối với
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
413, dấu thời gian được trả về sẽ dừng ở dấu thời gian hợp lệ trước đó

Ví dụ: đối với phần bù

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
416, nếu
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
412 không phải là ngày đầu tiên của tháng, dấu thời gian được trả về sẽ bắt đầu bằng ngày đầu tiên của tháng tiếp theo. Nếu
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
413 không phải là ngày đầu tiên của tháng, dấu thời gian được trả về cuối cùng sẽ là ngày đầu tiên của tháng tương ứng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
58

Chúng ta có thể thấy trong ví dụ trên,

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
81 và
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
82 sẽ chỉ trả về dấu thời gian hợp lệ giữa
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
412 và
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
413. Nếu đây không phải là dấu thời gian hợp lệ cho tần suất nhất định, nó sẽ chuyển sang giá trị tiếp theo cho
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
412 [tương ứng trước đó cho
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
413]

Kết hợp các bí danh#

Như chúng ta đã thấy trước đây, bí danh và đối tượng offset có thể thay thế được trong hầu hết các hàm

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
59

Bạn có thể kết hợp bù trừ trong ngày và trong ngày với nhau

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
80

Độ lệch cố định #

Đối với một số tần số, bạn có thể chỉ định hậu tố neo

bí danh

Sự mô tả

W-SUN

tần suất hàng tuần [Chủ Nhật]. Giống như 'W'

W-MON

tần suất hàng tuần [Thứ Hai]

W-TUE

tần suất hàng tuần [Thứ Ba]

W-WED

tần suất hàng tuần [Thứ Tư]

W-THU

tần suất hàng tuần [thứ Năm]

W-FRI

tần suất hàng tuần [thứ sáu]

W-SAT

tần suất hàng tuần [thứ bảy]

[B]Q[S]-DEC

tần suất hàng quý, năm kết thúc vào tháng 12. Tương tự như 'Q'

[B]Q[S]-JAN

tần suất hàng quý, năm kết thúc vào tháng 1

[B]Q[S]-THÁNG 2

tần suất hàng quý, năm kết thúc vào tháng 2

[B]Q[S]-MAR

tần suất hàng quý, năm kết thúc vào tháng 3

[B]Q[S]-APR

tần suất hàng quý, năm kết thúc vào tháng 4

[B]Q[S]-MAY

tần suất hàng quý, năm kết thúc vào tháng 5

[B]Q[S]-JUN

tần suất hàng quý, năm kết thúc vào tháng 6

[B]Q[S]-THÁNG 7

tần suất hàng quý, năm kết thúc vào tháng 7

[B]Q[S]-AUG

tần suất hàng quý, năm kết thúc vào tháng 8

[B]Q[S]-SEP

tần suất hàng quý, năm kết thúc vào tháng 9

[B]Q[S]-OCT

tần suất hàng quý, năm kết thúc vào tháng 10

[B]Q[S]-THÁNG 11

tần suất hàng quý, năm kết thúc vào tháng 11

[B]A[S]-DEC

tần suất hàng năm, thả neo vào cuối tháng 12. Giống như 'A'

[B]A[S]-JAN

tần suất hàng năm, neo vào cuối tháng Giêng

[B]A[S]-THÁNG 2

tần suất hàng năm, thả neo vào cuối tháng 2

[B]A[S]-MAR

tần suất hàng năm, thả neo vào cuối tháng 3

[B]A[S]-APR

tần suất hàng năm, thả neo vào cuối tháng 4

[B]A[S]-MAY

tần suất hàng năm, thả neo vào cuối tháng 5

[B]A[S]-JUN

tần suất hàng năm, thả neo vào cuối tháng 6

[B]A[S]-THÁNG 7

tần suất hàng năm, thả neo vào cuối tháng 7

[B]A[S]-AUG

tần suất hàng năm, thả neo vào cuối tháng 8

[B]A[S]-SEP

tần suất hàng năm, thả neo vào cuối tháng 9

[B]A[S]-THÁNG 10

tần suất hàng năm, thả neo vào cuối tháng 10

[B]A[S]-THÁNG 11

tần suất hàng năm, thả neo vào cuối tháng 11

Chúng có thể được sử dụng làm đối số cho

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
87,
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
85, hàm tạo cho
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83, cũng như nhiều hàm liên quan đến chuỗi thời gian khác trong gấu trúc

Ngữ nghĩa bù đắp cố định #

Đối với những độ lệch được cố định ở đầu hoặc cuối của tần suất cụ thể [

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
91,
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
93,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
430, v.v.], các quy tắc sau áp dụng cho việc lăn tiến và lùi

Khi

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
431 không phải là 0, nếu ngày đã cho không nằm trên một điểm neo, nó sẽ chuyển sang điểm neo tiếp theo [trước đó] và di chuyển
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
432 thêm các bước tiến hoặc lùi

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
81

Nếu ngày đã cho nằm trên một điểm neo, nó sẽ được di chuyển _______3433 điểm về phía trước hoặc phía sau

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82

Đối với trường hợp khi

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
434, ngày không được di chuyển nếu trên một điểm neo, nếu không, nó sẽ được chuyển tới điểm neo tiếp theo

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83

Ngày lễ / lịch nghỉ lễ#

Ngày lễ và lịch cung cấp một cách đơn giản để xác định các quy tắc ngày lễ sẽ được sử dụng với

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
83 hoặc trong phân tích khác yêu cầu tập hợp các ngày lễ được xác định trước. Lớp
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
436 cung cấp tất cả các phương thức cần thiết để trả về danh sách các ngày lễ và chỉ cần xác định
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
437 trong một lớp lịch nghỉ lễ cụ thể. Hơn nữa, các thuộc tính lớp
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
412 và
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
413 xác định phạm vi ngày các ngày lễ được tạo. Chúng nên được ghi đè lên lớp
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
436 để có phạm vi áp dụng cho tất cả các lớp con lịch.
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
441 là lịch duy nhất tồn tại và chủ yếu dùng làm ví dụ để phát triển các lịch khác

Đối với những ngày lễ diễn ra vào những ngày cố định [e. g. , Ngày tưởng niệm Hoa Kỳ hoặc ngày 4 tháng 7] một quy tắc tuân thủ xác định thời điểm lễ đó được thực hiện nếu nó rơi vào cuối tuần hoặc một số ngày không được tuân thủ khác. Các quy tắc tuân thủ được xác định là

Qui định

Sự mô tả

ngày làm việc gần nhất

di chuyển Thứ Bảy đến Thứ Sáu và Chủ nhật đến Thứ Hai

chủ nhật_đến_thứ hai

chuyển Chủ Nhật sang Thứ Hai tuần sau

next_monday_or_tuesday

di chuyển Thứ Bảy đến Thứ Hai và Chủ Nhật/Thứ Hai đến Thứ Ba

trước_thứ sáu

chuyển Thứ Bảy và Chủ Nhật sang Thứ Sáu trước đó”

Thứ hai tới

chuyển thứ bảy và chủ nhật sang thứ hai tuần sau

Ví dụ về cách xác định ngày lễ và lịch nghỉ lễ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
84

dấu

ngày trong tuần=MO[2] giống như 2 * Tuần[ngày trong tuần=2]

Sử dụng lịch này, việc tạo chỉ mục hoặc thực hiện phép tính bù trừ sẽ bỏ qua các ngày cuối tuần và ngày lễ [i. e. , Ngày tưởng niệm/ngày 4 tháng 7]. Ví dụ: bên dưới xác định bù ngày làm việc tùy chỉnh bằng cách sử dụng

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
442. Giống như bất kỳ phần bù nào khác, nó có thể được sử dụng để tạo một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 hoặc thêm vào các đối tượng
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
08 hoặc
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
85

Phạm vi được xác định bởi các thuộc tính lớp

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
412 và
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
413 của
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
436. Các giá trị mặc định được hiển thị bên dưới

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
86

Những ngày này có thể được ghi đè bằng cách đặt các thuộc tính là ngày giờ/Dấu thời gian/chuỗi

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
87

Mọi lớp lịch đều có thể truy cập theo tên bằng cách sử dụng hàm

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
449 trả về một thể hiện của lớp ngày lễ. Mọi lớp lịch đã nhập sẽ tự động có sẵn bằng chức năng này. Ngoài ra,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
450 cung cấp giao diện dễ dàng để tạo lịch là sự kết hợp của lịch hoặc lịch với các quy tắc bổ sung

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
88

Các phương thức phiên bản liên quan đến Chuỗi thời gian#

Dịch chuyển / tụt hậu #

Người ta có thể muốn dịch chuyển hoặc làm trễ các giá trị trong chuỗi thời gian qua lại theo thời gian. Phương pháp này là

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
451, có sẵn trên tất cả các đối tượng gấu trúc

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
89

Phương thức

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
06 chấp nhận một đối số
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
93 có thể chấp nhận một lớp
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
98 hoặc đối tượng giống như
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
09 khác hoặc cũng là một bí danh offset .

Khi

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
93 được chỉ định, phương thức
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
06 sẽ thay đổi tất cả các ngày trong chỉ mục thay vì thay đổi căn chỉnh của dữ liệu và chỉ mục

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
90

Lưu ý rằng khi

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
93 được chỉ định, mục nhập hàng đầu không còn là NaN vì dữ liệu không được sắp xếp lại

Chuyển đổi tần số #

Chức năng chính để thay đổi tần số là phương thức

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
459. Đối với một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83, về cơ bản, đây chỉ là một trình bao bọc mỏng nhưng tiện lợi xung quanh
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
461 để tạo ra một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
87 và gọi
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
463

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
91

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
464 cung cấp tiện ích hơn nữa để bạn có thể chỉ định phương pháp nội suy cho bất kỳ khoảng trống nào có thể xuất hiện sau khi chuyển đổi tần số

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
92

Điền tiến/lùi#

Liên quan đến

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
464 và
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
463 là
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
467, được ghi lại trong phần dữ liệu bị thiếu .

Chuyển đổi sang Python datetimes#

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 có thể được chuyển đổi thành một mảng các đối tượng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
78 gốc của Python bằng cách sử dụng phương thức
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
470

lấy mẫu lại #

pandas có chức năng đơn giản, mạnh mẽ và hiệu quả để thực hiện các thao tác lấy mẫu lại trong quá trình chuyển đổi tần số [e. g. , chuyển đổi dữ liệu thứ hai thành dữ liệu 5 phút]. Điều này cực kỳ phổ biến trong nhưng không giới hạn ở các ứng dụng tài chính

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
471 là một nhóm dựa trên thời gian, theo sau là phương pháp rút gọn trên mỗi nhóm của nó. Xem một số ví dụ về sách dạy nấu ăn để biết một số chiến lược nâng cao.

Phương thức

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
471 có thể được sử dụng trực tiếp từ đối tượng
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
473, xem tài liệu theo nhóm .

Khái niệm cơ bản #

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93

Hàm

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
474 rất linh hoạt và cho phép bạn chỉ định nhiều tham số khác nhau để kiểm soát hoạt động chuyển đổi tần số và lấy mẫu lại

Bất kỳ chức năng nào có sẵn thông qua dispatching đều khả dụng dưới dạng một phương thức của đối tượng được trả về, bao gồm

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
475,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
476,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
477,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
478,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
479,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
480 .

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94

Đối với lấy mẫu xuống, có thể đặt

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
485 thành 'trái' hoặc 'phải' để chỉ định phần cuối của khoảng được đóng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
95

Các tham số như

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
486 được sử dụng để thao tác các nhãn kết quả.
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
486 chỉ định xem kết quả được gắn nhãn bắt đầu hay kết thúc khoảng thời gian

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
96

Cảnh báo

Các giá trị mặc định cho

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
486 và
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
485 là 'trái' cho tất cả các độ lệch tần số ngoại trừ 'M', 'A', 'Q', 'BM', 'BA', 'BQ' và 'W' đều có giá trị mặc định

Điều này có thể vô tình dẫn đến việc nhìn về phía trước, trong đó giá trị cho thời gian sau được kéo trở lại thời điểm trước đó như trong ví dụ sau với tần suất

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
80

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
97

Lưu ý cách giá trị của Chủ nhật được kéo về Thứ Sáu trước đó. Để có hành vi trong đó giá trị của Chủ nhật được đẩy sang Thứ hai, thay vào đó hãy sử dụng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
98

Tham số

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
491 có thể được đặt thành 0 hoặc 1 và cho phép bạn lấy mẫu lại trục đã chỉ định cho một
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
493 có thể được đặt thành 'dấu thời gian' hoặc 'thời gian' để chuyển đổi chỉ mục kết quả thành/từ biểu diễn dấu thời gian và khoảng thời gian. Theo mặc định,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
474 giữ lại biểu diễn đầu vào

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
495 có thể được đặt thành 'bắt đầu' hoặc 'kết thúc' khi lấy mẫu lại dữ liệu khoảng thời gian [chi tiết bên dưới]. Nó chỉ định cách các khoảng thời gian tần số thấp được chuyển đổi thành các khoảng thời gian tần số cao hơn

lấy mẫu #

Đối với upsampling, bạn có thể chỉ định cách upsample và tham số

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
496 để nội suy trên các khoảng trống được tạo

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
99

Lấy mẫu lại thưa thớt#

Chuỗi thời gian thưa thớt là chuỗi mà bạn có ít điểm hơn rất nhiều so với lượng thời gian bạn muốn lấy mẫu lại. Lấy mẫu một cách ngây thơ một chuỗi thưa thớt có khả năng tạo ra nhiều giá trị trung gian. Khi bạn không muốn sử dụng một phương thức để điền vào các giá trị này, e. g.

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
497 là
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
99, khi đó các giá trị trung gian sẽ được điền bằng
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
499

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
474 là một nhóm dựa trên thời gian, nên sau đây là một phương pháp để chỉ lấy mẫu lại một cách hiệu quả các nhóm không phải là tất cả
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
499

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
00

Nếu chúng tôi muốn lấy mẫu lại cho toàn bộ chuỗi

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
01

Thay vào đó, chúng tôi chỉ có thể lấy mẫu lại những nhóm mà chúng tôi có điểm như sau

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
02

tập hợp #

Tương tự như API tổng hợp , API nhóm , . window API, a

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
702 can be selectively resampled.

Lấy mẫu lại một

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03, mặc định sẽ hoạt động trên tất cả các cột có cùng chức năng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
03

Chúng tôi có thể chọn một hoặc nhiều cột cụ thể bằng getitem tiêu chuẩn

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
04

Bạn có thể chuyển một danh sách hoặc lệnh của các hàm để thực hiện tổng hợp, xuất ra một

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
05

Trên một

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03 được lấy mẫu lại, bạn có thể chuyển một danh sách các hàm để áp dụng cho từng cột, tạo ra kết quả tổng hợp với chỉ mục phân cấp

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
06

Bằng cách chuyển lệnh tới

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
706, bạn có thể áp dụng một tập hợp khác cho các cột của
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
07

Tên hàm cũng có thể là chuỗi. Để một chuỗi hợp lệ, nó phải được triển khai trên đối tượng được lấy mẫu lại

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
08

Hơn nữa, bạn cũng có thể chỉ định riêng nhiều hàm tổng hợp cho từng cột

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
09

Nếu một

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03 không có chỉ mục datetimelike, nhưng thay vào đó bạn muốn lấy mẫu lại dựa trên cột datetimelike trong khung, nó có thể được chuyển đến từ khóa
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
709

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
10

Tương tự, thay vào đó, nếu bạn muốn lấy mẫu lại theo cấp độ giống như thời gian của

In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
23, tên hoặc vị trí của nó có thể được chuyển đến từ khóa
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
711

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
11

Lặp lại thông qua các nhóm #

Với đối tượng

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
702 trong tay, việc lặp qua dữ liệu được nhóm là rất tự nhiên và hoạt động tương tự như
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
713

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
12

Xem Lặp qua các nhóm hoặc

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
714 để biết thêm.

Sử dụng
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
65 hoặc
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
716 để điều chỉnh điểm bắt đầu của ngăn#

Mới trong phiên bản 1. 1. 0

Các thùng của nhóm được điều chỉnh dựa trên đầu ngày của điểm bắt đầu chuỗi thời gian. Điều này hoạt động tốt với tần suất là bội số của một ngày [như

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
717] hoặc chia đều một ngày [như
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
718 hoặc
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
719]. Điều này có thể tạo ra sự không nhất quán với một số tần số không đáp ứng tiêu chí này. Để thay đổi hành vi này, bạn có thể chỉ định Dấu thời gian cố định với đối số
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
65

Ví dụ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
13

Ở đây chúng ta có thể thấy rằng, khi sử dụng

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
65 với giá trị mặc định của nó [
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
722], kết quả sau
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
723 không giống nhau tùy thuộc vào thời điểm bắt đầu chuỗi thời gian

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
14

Ở đây chúng ta có thể thấy rằng, khi đặt

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
65 thành
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
725, kết quả sau
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
723 sẽ giống hệt nhau tùy thuộc vào thời điểm bắt đầu chuỗi thời gian

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
15

Nếu cần, bạn có thể sử dụng dấu thời gian tùy chỉnh cho

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
65

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
16

Nếu cần, bạn chỉ có thể điều chỉnh các ngăn bằng

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
716 Timedelta sẽ được thêm vào
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
65 mặc định. Hai ví dụ đó tương đương với chuỗi thời gian này

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
17

Lưu ý việc sử dụng

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
730 cho
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
65 trong ví dụ cuối cùng. Trong trường hợp đó,
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
65 sẽ được đặt thành giá trị đầu tiên của chuỗi thời gian

lấy mẫu ngược lại #

Mới trong phiên bản 1. 3. 0

Thay vì điều chỉnh phần đầu của các ngăn, đôi khi chúng ta cần sửa phần cuối của các ngăn để tạo mẫu lại ngược với một

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
93 đã cho. Lấy mẫu lại ngược đặt
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
485 thành
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
735 theo mặc định vì giá trị cuối cùng sẽ được coi là điểm biên cho thùng cuối cùng

Chúng ta có thể đặt

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
65 thành
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
737. Giá trị cho một chỉ số
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 cụ thể là viết tắt của kết quả lấy mẫu lại từ
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 hiện tại trừ đi
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
93 đến
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 hiện tại với mức đóng bên phải

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
18

Ngoài ra, trái ngược với tùy chọn

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
722,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
743 được hỗ trợ. Điều này sẽ đặt nguồn gốc là nửa đêm trần của
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 lớn nhất

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
19

Kết quả trên sử dụng

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
745 làm cạnh phải của thùng cuối cùng kể từ lần tính toán sau

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
20

Biểu diễn khoảng thời gian#

Các khoảng thời gian đều đặn được biểu thị bằng các đối tượng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 trong gấu trúc trong khi chuỗi các đối tượng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 được thu thập trong một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94, có thể được tạo bằng hàm tiện lợi
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
97

Giai đoạn = Stage#

Một

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 đại diện cho một khoảng thời gian [e. g. , một ngày, một tháng, một quý, v.v.]. Bạn có thể chỉ định khoảng thông qua từ khóa
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
93 bằng bí danh tần số như bên dưới. Bởi vì
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
93 đại diện cho khoảng thời gian của
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93, nên nó không thể âm như “-3D”

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
21

Cộng và trừ các số nguyên từ các khoảng thời gian sẽ dịch chuyển khoảng thời gian theo tần số của chính nó. Số học không được phép giữa

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 với
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
93 [span] khác nhau

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
22

Nếu tần số của

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 là hàng ngày hoặc cao hơn [
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
757,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
758,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
759,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
760,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
761,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
762,
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
763], có thể thêm
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
764 và giống như
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
09 nếu kết quả có thể có cùng tần số. Nếu không,
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
91 sẽ được nâng lên

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
23

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
24

Nếu

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 có các tần số khác, chỉ có thể thêm cùng một
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
764. Nếu không,
In [13]: friday = pd.Timestamp["2018-01-05"]

In [14]: friday.day_name[]
Out[14]: 'Friday'

# Add 1 day
In [15]: saturday = friday + pd.Timedelta["1 day"]

In [16]: saturday.day_name[]
Out[16]: 'Saturday'

# Add 1 business day [Friday --> Monday]
In [17]: monday = friday + pd.offsets.BDay[]

In [18]: monday.day_name[]
Out[18]: 'Monday'
91 sẽ được nâng lên

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
25

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
26

Lấy hiệu của

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 trường hợp có cùng tần số sẽ trả về số lượng đơn vị tần số giữa chúng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
27

Chu kỳ Index và period_range #

Chuỗi thông thường của các đối tượng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 có thể được thu thập trong một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94, có thể được xây dựng bằng cách sử dụng chức năng thuận tiện của
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
97

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
28

Hàm tạo

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 cũng có thể được sử dụng trực tiếp

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
29

Truyền tần số nhân sẽ tạo ra một chuỗi

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 có nhịp nhân lên

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
30

Nếu

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
90 hoặc
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
91 là các đối tượng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93, thì chúng sẽ được sử dụng làm điểm cuối neo cho một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 với tần suất khớp với tần số của hàm tạo
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
31

Cũng giống như

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83, một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 cũng có thể được sử dụng để lập chỉ mục cho các đối tượng gấu trúc

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
32

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 hỗ trợ cộng và trừ với quy tắc tương tự như
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
33

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 có dtype riêng tên là
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
786, tham khảo Kiểu D định kỳ .

Khoảng thời gian dtypes#

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 có một loại dtype
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
786 tùy chỉnh. Đây là một dtype mở rộng pandas tương tự như dtype nhận biết múi giờ [
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
85].

Dtype

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
786 giữ thuộc tính
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
93 và được biểu diễn bằng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
95 như
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
793 hoặc
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
794, sử dụng chuỗi tần số .

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
34

Loại dtype

In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
786 có thể được sử dụng trong
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
796. Nó cho phép một người thay đổi
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
93 của một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 như
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
799 và chuyển đổi một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 thành
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 như
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
502

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
35

Lập chỉ mục chuỗi một phần của PeriodIndex#

Period Index hiện hỗ trợ cắt chuỗi một phần với các chỉ mục không đơn điệu

Mới trong phiên bản 1. 1. 0

Bạn có thể chuyển ngày tháng và chuỗi tới

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 và
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
03 với
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94, theo cách tương tự như với
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83. Để biết chi tiết, hãy tham khảo Lập chỉ mục chuỗi một phần DatetimeIndex .

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
36

Truyền một chuỗi biểu thị tần số thấp hơn

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 trả về dữ liệu được cắt một phần

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
37

Như với

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83, các điểm cuối sẽ được đưa vào kết quả. Ví dụ bên dưới cắt dữ liệu bắt đầu từ 10. 00 đến 11. 59

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
38

Chuyển đổi tần số và lấy mẫu lại với PeriodIndex#

Tần số của

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
93 và
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 có thể được chuyển đổi thông qua phương pháp
In [1]: import datetime

In [2]: dti = pd.to_datetime[
   ...:     ["1/1/2018", np.datetime64["2018-01-01"], datetime.datetime[2018, 1, 1]]
   ...: ]
   ...: 

In [3]: dti
Out[3]: DatetimeIndex[['2018-01-01', '2018-01-01', '2018-01-01'], dtype='datetime64[ns]', freq=None]
464. Hãy bắt đầu với năm tài chính 2011, kết thúc vào tháng 12

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
39

Chúng tôi có thể chuyển đổi nó thành tần suất hàng tháng. Sử dụng tham số

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
512, chúng ta có thể chỉ định trả về tháng bắt đầu hay tháng kết thúc

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
40

Các chữ viết tắt 's' và 'e' được cung cấp để thuận tiện

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
41

Chuyển đổi thành một “siêu thời kỳ” [e. g. , tần suất hàng năm là siêu chu kỳ của tần suất hàng quý] sẽ tự động trả về siêu chu kỳ bao gồm khoảng thời gian đầu vào

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
42

Lưu ý rằng vì chúng tôi đã chuyển đổi sang tần suất hàng năm kết thúc vào tháng 11, nên khoảng thời gian hàng tháng của tháng 12 năm 2011 thực tế là trong khoảng thời gian A-NOV 2012

Chuyển đổi thời gian với tần số cố định đặc biệt hữu ích để làm việc với nhiều dữ liệu hàng quý phổ biến đối với kinh tế, kinh doanh và các lĩnh vực khác. Nhiều tổ chức xác định các quý liên quan đến tháng mà năm tài chính của họ bắt đầu và kết thúc. Như vậy, quý 1 năm 2011 có thể bắt đầu trong năm 2010 hoặc vài tháng nữa là sang năm 2011. Thông qua các tần số cố định, gấu trúc hoạt động cho tất cả các tần số hàng quý từ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
513 đến
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
514

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
514 xác định các quý theo lịch thông thường

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
43

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
516 xác định năm tài chính kết thúc vào tháng 3

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
44

Chuyển đổi giữa các biểu diễn#

Dữ liệu được đánh dấu thời gian có thể được chuyển đổi thành dữ liệu Định kỳ được chỉnh sửa bằng cách sử dụng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
517 và ngược lại bằng cách sử dụng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
518

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
45

Hãy nhớ rằng 's' và 'e' có thể được sử dụng để trả về dấu thời gian ở đầu hoặc cuối của khoảng thời gian

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
46

Chuyển đổi giữa thời gian và dấu thời gian cho phép sử dụng một số hàm số học thuận tiện. Trong ví dụ sau, chúng tôi chuyển đổi tần suất theo quý có năm kết thúc vào tháng 11 thành 9 giờ sáng của cuối tháng sau khi kết thúc quý

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
47

Đại diện cho các khoảng ngoài giới hạn #

Nếu bạn có dữ liệu nằm ngoài giới hạn của

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82, hãy xem Giới hạn dấu thời gian , thì bạn có thể sử dụng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94 và/hoặc
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 của .

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
48

Để chuyển đổi từ đại diện YYYYMMDD dựa trên

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
523

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
49

Chúng có thể dễ dàng được chuyển đổi thành một

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
94

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
50

Xử lý múi giờ#

gấu trúc cung cấp hỗ trợ phong phú để làm việc với dấu thời gian ở các múi giờ khác nhau bằng cách sử dụng thư viện

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
525 và
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
81 hoặc đối tượng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
527 từ thư viện chuẩn

Làm việc với múi giờ#

Theo mặc định, các đối tượng gấu trúc không biết múi giờ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
51

Để bản địa hóa những ngày này thành một múi giờ [gán múi giờ cụ thể cho một ngày ngây thơ], bạn có thể sử dụng phương thức

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
528 hoặc đối số từ khóa
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
71 trong
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
81,
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 hoặc
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83. Bạn có thể chuyển các đối tượng múi giờ
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
525 hoặc
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
81 hoặc chuỗi cơ sở dữ liệu múi giờ Olson. Các chuỗi múi giờ Olson sẽ trả về các đối tượng múi giờ
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
525 theo mặc định. Để trả về các đối tượng múi giờ
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
81, hãy thêm
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
537 trước chuỗi

  • Trong ________ 4525, bạn có thể tìm thấy danh sách các múi giờ phổ biến [và ít phổ biến hơn] bằng cách sử dụng ________ 4539

  • In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    81 sử dụng múi giờ của hệ điều hành nên không có sẵn danh sách cố định. Đối với các khu vực chung, tên giống như
    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    525

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
52

Mới trong phiên bản 0. 25. 0

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
53

Lưu ý rằng múi giờ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
542 là trường hợp đặc biệt trong
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
81 và phải được xây dựng rõ ràng như một ví dụ của
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
544. Trước tiên, bạn cũng có thể xây dựng các đối tượng múi giờ khác một cách rõ ràng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
54

Để chuyển đổi một đối tượng pandas nhận biết múi giờ từ múi giờ này sang múi giờ khác, bạn có thể sử dụng phương thức

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
545

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
55

Ghi chú

Khi sử dụng múi giờ ________ 4525, _______ 083 sẽ xây dựng một đối tượng múi giờ khác với

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 cho đầu vào múi giờ giống nhau. Một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 có thể chứa một tập hợp các đối tượng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 có thể có các độ lệch UTC khác nhau và không thể được biểu diễn ngắn gọn bằng một thể hiện múi giờ
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
525 trong khi một
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 đại diện cho một thời điểm có độ lệch UTC cụ thể

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
56

Cảnh báo

Cảnh giác với chuyển đổi giữa các thư viện. Đối với một số múi giờ,

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
525 và
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
81 có các định nghĩa khác nhau về múi giờ. Đây là một vấn đề đối với các múi giờ bất thường hơn là đối với các múi giờ 'tiêu chuẩn' như
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
555

Cảnh báo

Xin lưu ý rằng định nghĩa múi giờ giữa các phiên bản của thư viện múi giờ có thể không được coi là bằng nhau. Điều này có thể gây ra sự cố khi làm việc với dữ liệu được lưu trữ được bản địa hóa bằng một phiên bản và hoạt động trên một phiên bản khác. Xem tại đây để biết cách xử lý tình huống như vậy.

Cảnh báo

Đối với múi giờ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
525, việc chuyển trực tiếp đối tượng múi giờ vào hàm tạo
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
78 là không chính xác [e. g. ,
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
558. Thay vào đó, ngày giờ cần được bản địa hóa bằng cách sử dụng phương thức
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
559 trên đối tượng múi giờ
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
525

Cảnh báo

Xin lưu ý rằng đối với các thời điểm trong tương lai, bất kỳ thư viện múi giờ nào cũng không thể đảm bảo chuyển đổi chính xác giữa các múi giờ [và UTC] vì phần bù của múi giờ từ UTC có thể bị thay đổi bởi chính phủ tương ứng

Cảnh báo

Nếu bạn đang sử dụng các ngày sau 2038-01-18, do các thiếu sót hiện tại trong các thư viện cơ bản do sự cố năm 2038 gây ra, các điều chỉnh giờ mùa hè [DST] cho các ngày nhận biết múi giờ sẽ không được áp dụng. Nếu và khi các thư viện cơ bản được khắc phục, quá trình chuyển đổi DST sẽ được áp dụng

Ví dụ: đối với hai ngày thuộc Giờ mùa hè của Anh [và thường là GMT+1], cả hai xác nhận sau đây đều được đánh giá là đúng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
57

Dưới mui xe, tất cả các dấu thời gian được lưu trữ trong UTC. Các giá trị từ một múi giờ nhận biết

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
83 hoặc
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 sẽ có các trường của chúng [ngày, giờ, phút, v.v. ] được bản địa hóa theo múi giờ. Tuy nhiên, các dấu thời gian có cùng giá trị UTC vẫn được coi là bằng nhau ngay cả khi chúng ở các múi giờ khác nhau

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
58

Các hoạt động giữa

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 ở các múi giờ khác nhau sẽ mang lại UTC
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02, căn chỉnh dữ liệu trên dấu thời gian UTC

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
59

Để xóa thông tin múi giờ, hãy sử dụng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
565 hoặc
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
566.
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
565 sẽ xóa múi giờ mang lại biểu thị giờ địa phương.
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
566 sẽ xóa múi giờ sau khi chuyển đổi sang giờ UTC

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
60

Nếp gấp#

Mới trong phiên bản 1. 1. 0

Đối với những thời điểm không rõ ràng, gấu trúc hỗ trợ chỉ định rõ ràng đối số lần chỉ dành cho từ khóa. Do thời gian tiết kiệm ánh sáng ban ngày, một giờ đồng hồ treo tường có thể xảy ra hai lần khi chuyển từ giờ mùa hè sang mùa đông; . Fold chỉ được hỗ trợ để xây dựng từ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
78 ngây thơ [xem tài liệu về thời gian để biết chi tiết] hoặc từ
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
82 hoặc để xây dựng từ các thành phần [xem bên dưới]. Chỉ các múi giờ của
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
81 được hỗ trợ [xem tài liệu dateutil để biết các phương thức của
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
81 xử lý các múi giờ không rõ ràng] vì các múi giờ của
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
525 không hỗ trợ fold [xem tài liệu pytz để biết chi tiết về cách
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
525 xử lý các múi giờ không rõ ràng]. Để bản địa hóa một ngày giờ mơ hồ với
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
525, vui lòng sử dụng
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
576. Nói chung, chúng tôi khuyên bạn nên dựa vào
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
576 khi bản địa hóa các mốc thời gian không rõ ràng nếu bạn cần kiểm soát trực tiếp cách chúng được xử lý

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
61

Thời điểm mơ hồ khi bản địa hóa #

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
528 có thể không xác định được độ lệch UTC của dấu thời gian vì giờ tiết kiệm ánh sáng ban ngày [DST] trong múi giờ địa phương khiến một số thời điểm xảy ra hai lần trong vòng một ngày [“đồng hồ lùi lại”]. Lựa chọn tiếp theo đã khả thi

  • In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    579. Tăng một
    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    580 [hành vi mặc định]

  • In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    581. Cố gắng xác định độ lệch chính xác dựa trên tính đơn điệu của dấu thời gian

  • In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    582. Thay thế thời gian mơ hồ bằng
    In [6]: dti = dti.tz_localize["UTC"]
    
    In [7]: dti
    Out[7]: 
    DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
                   '2018-01-01 02:00:00+00:00'],
                  dtype='datetime64[ns, UTC]', freq='H']
    
    In [8]: dti.tz_convert["US/Pacific"]
    Out[8]: 
    DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
                   '2017-12-31 18:00:00-08:00'],
                  dtype='datetime64[ns, US/Pacific]', freq='H']
    
    13

  • In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    584.
    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    585 đại diện cho thời gian DST,
    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    586 đại diện cho thời gian không phải DST. Một mảng giống như các giá trị
    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    584 được hỗ trợ cho một chuỗi thời gian

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
62

Điều này sẽ thất bại vì có những thời điểm không rõ ràng [

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
588]

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
63

Xử lý những thời điểm mơ hồ này bằng cách chỉ định những điều sau đây

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
64

Thời gian không tồn tại khi bản địa hóa #

Quá trình chuyển đổi DST cũng có thể thay đổi giờ địa phương trước 1 giờ, tạo ra giờ địa phương không tồn tại [“đồng hồ lò xo tiến lên”]. Hành vi bản địa hóa một chuỗi thời gian không tồn tại thời gian có thể được kiểm soát bởi đối số ________ 4589. Lựa chọn tiếp theo đã khả thi

  • In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    579. Tăng một
    In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    591 [hành vi mặc định]

  • In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    582. Thay thế thời gian không tồn tại bằng
    In [6]: dti = dti.tz_localize["UTC"]
    
    In [7]: dti
    Out[7]: 
    DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
                   '2018-01-01 02:00:00+00:00'],
                  dtype='datetime64[ns, UTC]', freq='H']
    
    In [8]: dti.tz_convert["US/Pacific"]
    Out[8]: 
    DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
                   '2017-12-31 18:00:00-08:00'],
                  dtype='datetime64[ns, US/Pacific]', freq='H']
    
    13

  • In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    594. Dịch chuyển thời gian không tồn tại tới thời gian thực gần nhất

  • In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]
    
    In [5]: dti
    Out[5]: 
    DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
                   '2018-01-01 02:00:00'],
                  dtype='datetime64[ns]', freq='H']
    
    595. Chuyển thời gian không tồn tại về thời gian thực gần nhất

  • đối tượng múi giờ. Thay đổi thời gian không tồn tại theo thời lượng timedelta

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
65

Nội địa hóa thời gian không tồn tại sẽ gây ra lỗi theo mặc định

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
66

Biến đổi thời gian không tồn tại thành

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
13 hoặc thay đổi thời gian

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
67

Múi giờ Chuỗi hoạt động#

Một

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 với các giá trị ngây thơ của múi giờ được biểu thị bằng một dtype của
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
84

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
68

Một

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 với các giá trị nhận biết múi giờ được biểu thị bằng một dtype của
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
85 trong đó
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
71 là múi giờ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
69

Cả hai thông tin múi giờ

In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02 này đều có thể được thao tác thông qua trình truy cập
In [9]: idx = pd.date_range["2018-01-01", periods=5, freq="H"]

In [10]: ts = pd.Series[range[len[idx]], index=idx]

In [11]: ts
Out[11]: 
2018-01-01 00:00:00    0
2018-01-01 01:00:00    1
2018-01-01 02:00:00    2
2018-01-01 03:00:00    3
2018-01-01 04:00:00    4
Freq: H, dtype: int64

In [12]: ts.resample["2H"].mean[]
Out[12]: 
2018-01-01 00:00:00    0.5
2018-01-01 02:00:00    2.5
2018-01-01 04:00:00    4.0
Freq: 2H, dtype: float64
52, xem phần trình truy cập dt .

Ví dụ: để bản địa hóa và chuyển đổi một dấu ngây thơ sang nhận biết múi giờ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
70

Thông tin múi giờ cũng có thể được thao tác bằng phương pháp

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
804. Phương pháp này có thể chuyển đổi giữa các loại nhận biết múi giờ khác nhau

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
71

Ghi chú

Sử dụng

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
805 trên
In [6]: dti = dti.tz_localize["UTC"]

In [7]: dti
Out[7]: 
DatetimeIndex[['2018-01-01 00:00:00+00:00', '2018-01-01 01:00:00+00:00',
               '2018-01-01 02:00:00+00:00'],
              dtype='datetime64[ns, UTC]', freq='H']

In [8]: dti.tz_convert["US/Pacific"]
Out[8]: 
DatetimeIndex[['2017-12-31 16:00:00-08:00', '2017-12-31 17:00:00-08:00',
               '2017-12-31 18:00:00-08:00'],
              dtype='datetime64[ns, US/Pacific]', freq='H']
02, trả về một mảng dữ liệu NumPy. NumPy hiện không hỗ trợ múi giờ [mặc dù nó đang in theo múi giờ địa phương. ], do đó, một mảng đối tượng Dấu thời gian được trả về cho dữ liệu nhận biết múi giờ

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
72

Bằng cách chuyển đổi thành một mảng đối tượng Dấu thời gian, nó sẽ bảo toàn thông tin múi giờ. Ví dụ: khi chuyển đổi trở lại Sê-ri

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
73

Tuy nhiên, nếu bạn muốn một mảng NumPy

In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
84 thực tế [với các giá trị được chuyển đổi thành UTC] thay vì một mảng đối tượng, bạn có thể chỉ định đối số
In [4]: dti = pd.date_range["2018-01-01", periods=3, freq="H"]

In [5]: dti
Out[5]: 
DatetimeIndex[['2018-01-01 00:00:00', '2018-01-01 01:00:00',
               '2018-01-01 02:00:00'],
              dtype='datetime64[ns]', freq='H']
808

Chủ Đề