Hướng dẫn how do i format a date column in python? - làm cách nào để định dạng cột ngày tháng trong python?

Có một sự khác biệt giữa

  • nội dung của ô dữ liệu (giá trị nhị phân) vàcontent of a dataframe cell (a binary value) and
  • Trình bày của nó (hiển thị nó) cho chúng ta, con người.presentation (displaying it) for us, humans.

Vì vậy, câu hỏi là: Làm thế nào để đạt được bản trình bày thích hợp của các dữ liệu của tôi mà không thay đổi các loại dữ liệu / dữ liệu?presentation of my datas without changing the data / data types themselves?

Đây là câu trả lời:

  • Nếu bạn sử dụng sổ ghi chép Jupyter để hiển thị DataFrame của bạn hoặc
  • Nếu bạn muốn đạt được một bản trình bày dưới dạng tệp HTML (ngay cả với nhiều thuộc tính id
              DOB
    0  2019-07-03
    1  2019-08-03
    2  2019-09-03
    3  2019-10-03
    
    0 đã chuẩn bị cho kiểu dáng CSS tiếp theo - bạn có thể hoặc bạn không sử dụng chúng),HTML file (even with many prepared superfluous id and
              DOB
    0  2019-07-03
    1  2019-08-03
    2  2019-09-03
    3  2019-10-03
    
    0 attributes for further CSS styling — you may or you may not use them),

Sử dụng kiểu dáng. Kiểu dáng không thay đổi dữ liệu / dữ liệu Các loại cột của DataFrame của bạn.Styling don't change data / data types of columns of your dataframe.

Bây giờ tôi chỉ cho bạn cách tiếp cận nó trong sổ ghi chép Jupyter - để trình bày dưới dạng tệp HTML, hãy xem ghi chú gần cuối câu trả lời này.

Tôi sẽ cho rằng cột

          DOB
0  2019-07-03
1  2019-08-03
2  2019-09-03
3  2019-10-03
1 của bạn đã có loại
          DOB
0  2019-07-03
1  2019-08-03
2  2019-09-03
3  2019-10-03
2 (bạn đã cho thấy rằng bạn biết cách tiếp cận nó). Tôi đã chuẩn bị một khung dữ liệu đơn giản (chỉ có một cột) để hiển thị cho bạn một số kiểu dáng cơ bản:

  • Không theo kiểu:

    df
    
          DOB
0  2019-07-03
1  2019-08-03
2  2019-09-03
3  2019-10-03
  • Kiểu nó là

              DOB
    0  2019-07-03
    1  2019-08-03
    2  2019-09-03
    3  2019-10-03
    
    3:

    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
          DOB
0  07/03/2019
1  08/03/2019
2  09/03/2019
3  10/03/2019
  • Kiểu nó là

              DOB
    0  2019-07-03
    1  2019-08-03
    2  2019-09-03
    3  2019-10-03
    
    4:

    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
          DOB
0  03-07-2019
1  03-08-2019
2  03-09-2019
3  03-10-2019

Hãy cẩn thận! Đối tượng trả về không phải là DataFrame - nó là đối tượng của lớp

          DOB
0  2019-07-03
1  2019-08-03
2  2019-09-03
3  2019-10-03
5, vì vậy đừng gán lại cho
          DOB
0  2019-07-03
1  2019-08-03
2  2019-09-03
3  2019-10-03
6:
The returning object is NOT a dataframe — it is an object of the class
          DOB
0  2019-07-03
1  2019-08-03
2  2019-09-03
3  2019-10-03
5, so don't assign it back to
          DOB
0  2019-07-03
1  2019-08-03
2  2019-09-03
3  2019-10-03
6:

Đừng làm điều này:

df = df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})    # Don't do this!

.


Câu hỏi và trả lời:

  • Hỏi: Tại sao đối tượng styler của bạn (hoặc một biểu thức trả về nó) được sử dụng làm lệnh cuối cùng trong một ô Notebook Jupyter hiển thị bảng (kiểu dáng) của bạn chứ không phải chính đối tượng styler? Why your Styler object (or an expression returning it) used as the last command in a Jupyter notebook cell displays your (styled) table, and not the Styler object itself?

  • Trả lời: Bởi vì mọi đối tượng Styler đều có phương thức gọi lại

              DOB
    0  2019-07-03
    1  2019-08-03
    2  2019-09-03
    3  2019-10-03
    
    9 trả về mã HTML để hiển thị DataFrame của bạn (như một bảng HTML đẹp). Because every Styler object has a callback method
              DOB
    0  2019-07-03
    1  2019-08-03
    2  2019-09-03
    3  2019-10-03
    
    9 which returns an HTML code for rendering your dataframe (as a nice HTML table).

    Jupyter Notebook IDE tự động gọi phương thức này để hiển thị các đối tượng có nó.


Note:

Bạn không cần sổ ghi chép Jupyter để tạo kiểu (nghĩa là, để xuất bản dữ liệu mà không thay đổi các loại dữ liệu / dữ liệu của nó).

Một đối tượng Styler cũng có phương thức

df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
0, nếu bạn muốn có được một chuỗi với mã HTML (ví dụ: để xuất bản dataFrame được định dạng của bạn trên web hoặc chỉ cần trình bày bảng của bạn ở định dạng HTML):

df_styler = df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
HTML_string = df_styler.render()

Định dạng là định dạng-'Yyyy-MM-DD'.

DateTime là mô -đun ..

Làm cách nào để thay đổi định dạng ngày và thời gian trong Python?

  • Để làm điều này, Python cung cấp một phương thức gọi là strptime (). Tham số: Chuỗi - Chuỗi đầu vào. Định dạng - Đây là loại chuỗi.
  • Xem thảo luận
  • Định dạng là định dạng-'Yyyy-MM-DD'.

    DateTime là mô -đun ..

    Làm cách nào để thay đổi định dạng ngày và thời gian trong Python?

    Để làm điều này, Python cung cấp một phương thức gọi là strptime (). Tham số: Chuỗi - Chuỗi đầu vào. Định dạng - Đây là loại chuỗi.: Pandas

    Xem thảo luận

    Chức năng được sử dụng & nbsp;

    strftime () có thể thay đổi định dạng ngày trong Python. & nbsp;

    Syntax:

    strftime(format) 

    Trong đó, định dạng là một chuỗi đại diện cho loại định dạng ngày cần thiết. & Nbsp;

    • Cho năm %y & nbsp; %y 
    • Cho tháng %m%m
    • Cho ngày %d & nbsp;%d 

    Cách tiếp cận

    • Nhập mô -đun
    • Cung cấp ngày
    • Thay đổi định dạng bằng hàm trên

    Thí dụ

    Python3

    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    1
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    2

    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    3
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    4
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    5

    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    6
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    7
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    8
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    4
              DOB
    0  07/03/2019
    1  08/03/2019
    2  09/03/2019
    3  10/03/2019
    
    0
              DOB
    0  07/03/2019
    1  08/03/2019
    2  09/03/2019
    3  10/03/2019
    
    1
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    4
              DOB
    0  07/03/2019
    1  08/03/2019
    2  09/03/2019
    3  10/03/2019
    
    3
              DOB
    0  07/03/2019
    1  08/03/2019
    2  09/03/2019
    3  10/03/2019
    
    4
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    4
              DOB
    0  07/03/2019
    1  08/03/2019
    2  09/03/2019
    3  10/03/2019
    
    6
              DOB
    0  07/03/2019
    1  08/03/2019
    2  09/03/2019
    3  10/03/2019
    
    7

              DOB
    0  07/03/2019
    1  08/03/2019
    2  09/03/2019
    3  10/03/2019
    
    8
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    4
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    0
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    1
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    2
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    3
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    2
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    5
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    6

    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    7
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    4
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    9

              DOB
    0  03-07-2019
    1  03-08-2019
    2  03-09-2019
    3  03-10-2019
    
    0____24
              DOB
    0  03-07-2019
    1  03-08-2019
    2  03-09-2019
    3  03-10-2019
    
    22____53
              DOB
    0  03-07-2019
    1  03-08-2019
    2  03-09-2019
    3  03-10-2019
    
    4

              DOB
    0  03-07-2019
    1  03-08-2019
    2  03-09-2019
    3  03-10-2019
    
    5
              DOB
    0  03-07-2019
    1  03-08-2019
    2  03-09-2019
    3  03-10-2019
    
    6

    Đầu ra

    Hướng dẫn how do i format a date column in python? - làm cách nào để định dạng cột ngày tháng trong python?

    Thí dụ

    Python3

    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    1
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    2

    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    3
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    4
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    5

              DOB
    0  07/03/2019
    1  08/03/2019
    2  09/03/2019
    3  10/03/2019
    
    8
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    4
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    0
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    1
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    2
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    3
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    2
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    5
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    6

              DOB
    0  03-07-2019
    1  03-08-2019
    2  03-09-2019
    3  03-10-2019
    
    5
              DOB
    0  03-07-2019
    1  03-08-2019
    2  03-09-2019
    3  03-10-2019
    
    6

    Đầu ra

    Hướng dẫn how do i format a date column in python? - làm cách nào để định dạng cột ngày tháng trong python?

    Thí dụ

    Python3

    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    1
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    2

    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    3
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    4
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    5

              DOB
    0  07/03/2019
    1  08/03/2019
    2  09/03/2019
    3  10/03/2019
    
    8
    df.style.format({"DOB": lambda t: t.strftime("%m/%d/%Y")})
    
    4
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    0
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    1
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    2
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    3
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    2
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    5
    df.style.format({"DOB": lambda t: t.strftime("%d-%m-%Y")}) 
    
    6

              DOB
    0  03-07-2019
    1  03-08-2019
    2  03-09-2019
    3  03-10-2019
    
    5
              DOB
    0  03-07-2019
    1  03-08-2019
    2  03-09-2019
    3  03-10-2019
    
    6

    Đầu ra

    Hướng dẫn how do i format a date column in python? - làm cách nào để định dạng cột ngày tháng trong python?


    Làm cách nào để thay đổi định dạng của cột ngày trong Python?

    Hàm được sử dụng strftime () có thể thay đổi định dạng ngày trong Python.strftime() can change the date format in python.

    Làm thế nào để bạn định dạng một ngày trong Python?

    Ví dụ 15: định dạng ngày sử dụng strftime ()..
    %Y - năm [0001, ..., 2018, 2019, ..., 9999].
    %M - Tháng [01, 02, ..., 11, 12].
    %d - ngày [01, 02, ..., 30, 31].
    %H - giờ [00, 01, ..., 22, 23 ..
    %M - phút [00, 01, ..., 58, 59].
    %S - thứ hai [00, 01, ..., 58, 59].

    Làm cách nào để thay đổi định dạng ngày từ yyyy mm dd trong python?

    Chúng ta có thể chuyển đổi định dạng chuỗi thành DateTime bằng cách sử dụng hàm strptime ().Chúng tôi sẽ sử dụng định dạng '%Y/%M/%D' để đưa chuỗi vào DateTime ...
    Đầu vào là chuỗi DateTime ..
    Định dạng là định dạng-'Yyyy-MM-DD'.
    DateTime là mô -đun ..

    Làm cách nào để thay đổi định dạng ngày và thời gian trong Python?

    Để làm điều này, Python cung cấp một phương thức gọi là strptime ().Tham số: Chuỗi - Chuỗi đầu vào.Định dạng - Đây là loại chuỗi.