Gấu trúc đọc ngày excel mà không cần thời gian

TUYÊN BỐ MIỄN TRỪ TRÁCH NHIỆM. Nếu bạn không biết cách viết mã, vui lòng kiểm tra công cụ của chúng tôi www. bảng tính sạch. com cho phép bạn làm điều này mà không cần mã

Nếu bạn lấy mẫu 100 người làm việc với dữ liệu và hỏi họ loại dữ liệu nào (văn bản, số, v.v.). ) thường gây rắc rối nhất cho họ, tôi cá là ít nhất một nửa trong số họ sẽ nói ngày tháng

Ngày là một mớ hỗn độn. Dường như có rất nhiều cách để định dạng chúng. Sau đó, các chương trình khác nhau sử dụng các phương pháp khác nhau để xem một đoạn văn bản có phải là ngày tháng hay không. Điều này dẫn đến kẻ thù của Dữ liệu - không chuẩn hóa và lộn xộn

PSA. Tất cả chúng ta có thể đồng ý viết ngày là YYYY-MM-DD không? . Chuyển cái này đi và hãy kết thúc Ngày tận thế này một lần cho tất cả

LÀM CUỘC SỐNG DỄ DÀNG HƠN CHO MỌI NGƯỜI

Nhưng cho đến khi tất cả chúng ta có thể hiểu được thông báo này, chúng ta thường xuyên cần chuyển đổi ngày thành một định dạng bất cứ khi nào chúng ta thực hiện phân tích dữ liệu

Hướng dẫn này phác thảo một cách để chuyển đổi ngày trong bảng tính bằng Python và Pandas. Có nhiều cách để làm điều này nhưng chúng tôi thấy đây là cách dễ nhất

Điều kiện tiên quyết

Nếu bạn không biết cách sử dụng Terminal và Python, hoặc cách đọc và ghi tệp bằng Python và Pandas, thì hãy xem hướng dẫn này trước

Giới thiệu về Đọc và Viết Bảng tính với Python

Tập tin

Chúng tôi sẽ sử dụng một tệp mẫu cho hướng dẫn này. Bạn có thể tải xuống bằng cách nhấp vào tên tệp. cuộc gọi khách hàng. xlsx

Tệp này chứa một hàng cho các cuộc gọi được thực hiện cho khách hàng. Cột ngày mà chúng ta sẽ chuẩn hóa có tên là DateTime Recorded và như được thấy bên dưới, có tất cả các loại định dạng ngày khác nhau

Chỉ có 1 đại diện được sử dụng YYYY-MM-DD. Chúng tôi có một chặng đường dài để đi…. thở dài Mã đầy đủ

Mã đầy đủ ở bên dưới và bạn có thể làm theo. Chúng tôi sẽ chia nhỏ mã trong hướng dẫn

Mã đơn giản để chuyển đổi ngày thành bất kỳ định dạng nào bạn muốn

Tạo tệp cho mã

Mở trình soạn thảo văn bản và tạo tệp date. py. Lưu cái này vào cùng thư mục với CustomerCalls. tập tin xlsx

Nhập thư viện

Dòng 1

Nhập thư viện pandas để đọc, chuyển đổi ngày tháng và viết bảng tính

import pandas as pd
Đọc tệp

dòng 4

Chúng tôi sẽ đọc bảng tính bằng gấu trúc và lưu trữ kết quả trong khung dữ liệu customer_calls

customer_calls = pd.read_excel("CustomerCalls.xlsx")
Chuyển đổi ngày thành YYYY-MM-DD & Viết chuyển đổi sang một tệp mới

Dòng 7–8

Bây giờ hãy xem dòng mã chuyển đổi ngày tháng. Đây là phần cốt lõi của hướng dẫn nên chúng ta sẽ mổ xẻ nó một cách chi tiết

customer_calls["DateTime Recorded"] = pd.to_datetime(customer_calls["DateTime Recorded"]).dt.strftime("%Y-%m-%d")

Phía bên phải của dòng làm một vài điều

  1. Nó truy cập cột DateTime Recorded từ khung dữ liệu và sau đó chuyển đổi cột thành kiểu dữ liệu ngày giờ. Chúng tôi cần phải làm điều này trước khi chúng tôi có thể làm bất cứ điều gì trên cột này liên quan đến ngày tháng
pd.to_datetime(customer_calls["DateTime Recorded"])

2. Sau đó, chúng tôi gọi phương thức dt và strftime với một giá trị, “%Y-%m-%d” cho Python biết cách chúng tôi muốn định dạng ngày. Hãy gọi đây là chuỗi định dạng ngày. Chúng ta sẽ xem xét cách tạo giá trị này cho bất kỳ định dạng nào sau này trong hướng dẫn

.dt.strftime("%Y-%m-%d")

Phía bên trái của dòng chỉ định kết quả của chuyển đổi trở lại cột DateTime Recorded của khung dữ liệu customer_calls

customer_calls["DateTime Recorded"] =

Sau đó, chúng tôi viết khung dữ liệu này với cột đã chuyển đổi thành một tệp mới. Bạn có thể mở và kiểm tra ngày đã chuyển đổi

customer_calls.to_excel("CustomerCalls_YYYY_MM_DD.xlsx")
Tạo chuỗi định dạng ngày

Chuyển đổi sang bất kỳ định dạng nào khác yêu cầu chuỗi định dạng ngày thích hợp. Python cung cấp ánh xạ các phần phổ biến khác nhau của ngày, chẳng hạn như Năm có 4 chữ số (2019) và những gì chúng tương ứng trong Python, chẳng hạn như %Y

Trong tài liệu chính thức, đây được gọi là chỉ thị. Sau đó, bạn có thể sử dụng chúng để tạo chuỗi định dạng ngày và chuyển đổi ngày. Python sẽ thay thế các lệnh bằng giá trị ngày thích hợp được định dạng

E. g. , %Y là cả năm, %m là tháng có 2 chữ số và %d là ngày có 2 chữ số. Nếu chúng tôi muốn YYYY-MM-DD thì chúng tôi chỉ định “%Y-%m-%d”. Nếu chúng tôi muốn DD/MM/YYYY, thì chúng tôi chỉ định “%d/%m/%Y”

Theo nghĩa đen, chúng tôi có thể chỉ định bất kỳ thứ gì như “%d ngày của %m tháng tuyệt vời của % Y năm” sẽ chuyển đổi tất cả các ngày thành 24 ngày của 02 tháng tuyệt vời của năm 2019

Chúng ta hãy nhìn vào bản đồ dưới đây. Bạn cũng có thể đọc về điều này trong

Như bạn có thể thấy, có nhiều cách để biểu diễn hầu hết mọi thứ

Ví dụ cho ngày 22 tháng 9 năm 2019, 5. 30 giờ chiều

  1. “%A, %B %d” -> “Chủ nhật, ngày 22 tháng 9”
  2. “%d-%b-%y” -> “22-Sep-19”
  3. “%d %b, %Y — %I. %M %p trong múi giờ %Z” -> “22 tháng 9, 2019–5. 30 giờ tối theo múi giờ EST”

Một lần nữa, bạn có thể thấy chuỗi định dạng ngày có thể chứa bất kỳ thứ gì trong đó. Các lệnh được đánh dấu bằng % được thay thế bằng định dạng ngày thích hợp và mọi thứ khác vẫn giữ nguyên

Để chuyển đổi DateTime Recorded thành thứ gì đó như 22-Sep-19, chuỗi định dạng ngày của bạn sẽ là “%d-%b-%y” và dòng mã của bạn để chuyển đổi ngày tháng sẽ như sau

customer_calls["DateTime Recorded"] = pd.to_datetime(customer_calls["DateTime Recorded"]).dt.strftime("%d-%b-%y")

Vui lòng thử các kết hợp khác nhau và xuất các tệp để thử nghiệm

Những điều bổ sung

Có một số điều bạn có thể gặp phải khi chuyển đổi ngày tháng

  1. các pd. hàm to_datetime không thể chuyển đổi ngày của bạn thành đối tượng datetime. Điều này sẽ xảy ra nếu có BẤT CỨ ĐIỀU GÌ nào khác trong cột của bạn ngoại trừ ngày tháng hoặc nếu một ngày quá lạ khiến gấu trúc không thể nhận ra. Bạn sẽ phải định dạng lại/xóa giá trị vi phạm hoặc sử dụng phương pháp khác để chuyển đổi ngày tháng
  2. Nếu việc chuyển đổi sang đối tượng datetime không thành công thì sẽ không có cách nào để chuyển đổi chúng và phương thức strftime sẽ không thành công

Nếu bạn muốn có ứng dụng tùy chỉnh, dữ liệu được làm sạch hoặc dự án được tạo bằng bảng tính, bạn có thể xem dịch vụ tư vấn của chúng tôi tại đây. https. //www. bảng tình yêu. com

Làm cách nào để xóa thời gian khỏi cột ngày giờ trong gấu trúc?

hàm strftime() để xóa thời gian khỏi datetime trong Python. Chúng ta cũng có thể sử dụng hàm strftime() để xóa thời gian khỏi datetime trong Python. Hàm strftime() được sử dụng để trả về một chuỗi dựa trên đối tượng datetime. Chúng ta cần chỉ định định dạng của các giá trị cần thiết để trích xuất chúng.

Làm cách nào để đọc cột ngày từ excel trong 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 để chỉ trích xuất ngày từ datetime trong gấu trúc?

Phương pháp 1. Sử dụng hàm ngày tháng .
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

Pandas có hỗ trợ chuỗi thời gian không?

pandas 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 datetime64 và timedelta64, 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ư scikits.