Làm việc với Show Hãy cùng xem ví dụ sau. Trong khung dữ liệu này, chúng tôi có một cột có tên là 'joining_date' có vẻ là cột Ví dụ: đối với ID a0001, chuỗi ngày được sắp xếp trong DD. MM. Định dạng YYYY trong đó ngày được viết đầu tiên. Đối với ID a0005, chuỗi ngày được hiển thị ở định dạng DD-MM-YY trong đó ngày cũng được viết trước. Đối với ID a0002, chuỗi ngày được sắp xếp theo định dạng MM/DD/YYYY với tháng được viết trước, điều này phổ biến ở Hoa Kỳ. S Hình ảnh của tác giảVậy chúng ta có thể làm gì để xóa cột chuỗi ngày lộn xộn có nhiều định dạng khác nhau một cách dễ dàng và hiệu quả? Trước tiên, hãy thử phương pháp df['joining_date'] = pd.to_datetime(df['joining_date']) Hình ảnh của tác giảChúng ta có thể thấy rằng với phương thức df['joining_date'] = pd.to_datetime(df['joining_date'], dayfirst=True) 0, chúng ta có thể phân tích các chuỗi ngày có định dạng hỗn hợp thành datetime với định dạng chuẩn (mặc định là YYYY-MM-DD). Vì df['joining_date'] = pd.to_datetime(df['joining_date'], dayfirst=True) 0 theo mặc định phân tích chuỗi có định dạng tháng đầu tiên (MM/DD, MM DD hoặc MM-DD), nên nó trộn lẫn ngày và tháng cho các chuỗi ngày với định dạng ngày đầu tiên (e. g. , ĐD. MM. YYYY cho những ngày có dấu gạch chéo màu đỏ)Để khắc phục sự cố này, chúng ta chỉ cần thêm đối số df['joining_date'] = pd.to_datetime(df['joining_date'], dayfirst=True) 3 vào mã bên dướidf['joining_date'] = pd.to_datetime(df['joining_date'], dayfirst=True) Hình ảnh của tác giảVâng. Vì vậy, điều này đã khắc phục vấn đề trước đó nhưng tạo ra một vấn đề mới. Đối với chuỗi ngày có định dạng MM/DD/YYYY (hàng 7), vì chúng tôi đặt đối số df['joining_date'] = pd.to_datetime(df['joining_date'], dayfirst=True) 4 thành df['joining_date'] = pd.to_datetime(df['joining_date'], dayfirst=True) 5, nó đã chuyển đổi 3/5/2016 thành 2016–03–05, coi 5 là ngày và 3 là Để khắc phục sự cố mới này, chúng ta có thể áp dụng điều kiện df['joining_date'] = pd.to_datetime(df['joining_date'], dayfirst=True) 6 để chỉ đặt đối số df['joining_date'] = pd.to_datetime(df['joining_date'], dayfirst=True) 4 thành df['joining_date'] = pd.to_datetime(df['joining_date'], dayfirst=True) 5 cho các chuỗi ngày có ngày được viết trướcdf['joining_date_clean'] = np.where(df['joining_date'].str.contains('/'), pd.to_datetime(df['joining_date']), pd.to_datetime(df['joining_date'], dayfirst=True)) Hình ảnh của tác giảNó hoạt động. Bây giờ chúng ta có một cột ngày rõ ràng hơn nhiều để làm việc với. Xin lưu ý rằng bạn cũng có thể chỉ định định dạng ngày đầu ra khác với định dạng mặc định, bằng cách sử dụng phương thức df['joining_date'] = pd.to_datetime(df['joining_date'], dayfirst=True) 9. Ví dụ: bạn có thể chọn hiển thị ngày đầu ra là MM/DD/YYYY bằng cách chỉ định df['joining_date_clean'] = np.where(df['joining_date'].str.contains('/'), pd.to_datetime(df['joining_date']), pd.to_datetime(df['joining_date'], dayfirst=True)) 0df['joining_date_clean'] = np.where(df['joining_date'].str.contains('/'), pd.to_datetime(df['joining_date']).dt.strftime('%m/%d/%Y'), pd.to_datetime(df['joining_date'], dayfirst=True).dt.strftime('%m/%d/%Y')) Hình ảnh của tác giảcủa bạn đi. Không cần thực hiện bất kỳ thao tác chuỗi ưa thích nào, chúng tôi có thể chuyển đổi chuỗi ngày lộn xộn trong tập dữ liệu gốc thành cột Nguồn dữ liệu Bộ dữ liệu mẫu được sử dụng trong bài đăng này được tạo bởi tác giả cho mục đích trình diễn Bạn có thể mở khóa toàn quyền truy cập vào bài viết của tôi và phần còn lại của Phương tiện bằng cách đăng ký làm thành viên Phương tiện ($5 mỗi tháng) thông qua liên kết giới thiệu này. Bằng cách đăng ký qua liên kết này, tôi sẽ nhận được một phần phí thành viên của bạn mà bạn không phải trả thêm phí. Cảm ơn bạn Làm cách nào tôi có thể định dạng ngày trong gấu trúc?nhập gấu trúc dưới dạng pd. # đầu vào tính bằng mm. đ. định dạng yyyy. ngày = ['01. 02. 2019']. nhập gấu trúc dưới dạng pd. # ngày (mm. đ. yyyy) và thời gian (H. MM. SS) ngày = ['01. 02. 2019 1. 30. 00 giờ tối']. nhập gấu trúc dưới dạng pd. # gấu trúc diễn giải ngày này ở định dạng m-d-yyyy. in (pd. . nhập gấu trúc dưới dạng pd. ngày = '2019-07-31 12. 00. 00-UTC' bản in (pd Làm cách nào để trích xuất ngày từ tệp excel bằng gấu trúc?Cách tiếp cận. . Nhập mô-đun cần thiết Nhập dữ liệu từ tệp Excel Tạo một cột bổ sung cho một ngày mới Đặt chỉ mục để tìm kiếm Xác định mẫu định dạng ngày Ngày tìm kiếm và gán cho cột tương ứng trong Dataframe Làm cách nào để chuyển đổi ngày giờ thành ngày trong DataFrame?Cú pháp. . dataframe là khung dữ liệu đầu vào to_datetime là hàm dùng để chuyển chuỗi datetime thành datetime DateTime là cột ngày giờ trong khung dữ liệu đt. ngày được sử dụng để chuyển đổi ngày giờ thành ngày Cột ngày là cột mới để lấy ngày từ datetime Làm cách nào để thay thế ngày trong gấu trúc?Trong gấu trúc, gấu trúc. Dấu thời gian chứa hàm replace() để thay thế các trường ngày và giờ của đối tượng Dấu thời gian đã cho. Nó tương đương với đối tượng datetime của Python. |