Tiếng Việt

Dữ liệu & bảng tính · CSV Trình dọn dẹp

Tại sao Excel âm thầm làm hỏng các trường CSV: Số 0 ở đầu, ngày tháng và ID dài

· Tại sao nó quan trọng

csv data-cleaning bảng tính

Mã định danh văn bản thô giữ lại các số 0 đứng đầu bên cạnh số được giải thích trong bảng tính
Hình minh họa vector ToolAcre gốc

Việc mở CSV trong bảng tính là không bình thường: mã bưu điện mất số 0, mã trở thành ngày tháng và số nhận dạng dài biến thành ký hiệu khoa học. Bài đăng này giải thích lý do tại sao điều đó xảy ra, điều gì không thể phục hồi và cách giữ nguyên tệp thô.

Tệp vẫn ổn cho đến khi ai đó mở nó — mã bưu điện 01234 trở thành 1234 và thiệt hại được lưu lại

Một tệp rời khỏi hệ thống nguồn có mã bưu điện 01234, được mở trong bảng tính và trả về cho nhà phân tích với 1234. CSV ban đầu không có định dạng sai: nó chứa văn bản có số 0 đứng đầu. Sự khác biệt nảy sinh khi một chương trình đoán cột đó là số và sau đó lưu giá trị diễn giải của nó. Sau khi ai đó ghi đè lên tệp nguồn, công cụ dọn dẹp sau này không thể biết liệu 1234 từng có nghĩa là 01234 hay 001234. Giữ nguyên bản xuất trước khi kiểm tra nó trong bất kỳ bảng tính nào.

Đoán khi mở — cách bảng tính suy ra số, ngày tháng và công thức từ văn bản và tại sao CSV khiến chúng không có cách nào khác để nói khác

CSV thể hiện hàng, dấu phân cách và văn bản được trích dẫn; nó không khai báo các loại số, ngày hoặc mã bưu điện trên mỗi cột. Một bảng tính mở trực tiếp phải đoán. Giá trị bắt đầu bằng chữ số có thể trở thành số, 03-04 có thể được hiểu là ngày theo ngôn ngữ và giá trị bắt đầu bằng = có thể được hiểu là công thức trong một số ứng dụng. Việc trích dẫn "01234" bảo vệ dấu phân cách CSV chứ không phải việc phân loại nó dưới dạng văn bản trong tương lai bởi trình hướng dẫn nhập tự động.

Thương vong cổ điển - số 0 đứng đầu, số nhận dạng số dài, bất kỳ thứ gì giống với ngày tháng và giá trị bắt đầu bằng dấu bằng

Các số 0 đứng đầu trong mã bưu điện và SKU, số nhận dạng có nhiều chữ số có ý nghĩa hơn định dạng số trong bảng tính có thể lưu giữ và các chuỗi có dạng ngày mơ hồ là những tai nạn kinh điển. Bản thân ký hiệu khoa học không phải là lỗi—nó là một lựa chọn hiển thị—nhưng việc lưu ID dài sau khi chuyển đổi số có thể làm mất các chữ số chính xác. Các giá trị có dạng công thức từ dữ liệu không đáng tin cậy là một rủi ro bảo mật riêng biệt. Quá trình xuất CSV của ToolAcre có tùy chọn an toàn khi tiêm công thức đặt tiền tố cho những khởi đầu đầy rủi ro, với sự đánh đổi mà các ô được tính toán có chủ ý sẽ không còn tính toán nữa.

Tại sao hư hỏng thường là vĩnh viễn — độ chính xác bị mất khi lưu và ngày được tuần tự hóa lại ở định dạng khác không thể đảo ngược khỏi đầu ra

Giả sử tham chiếu khách hàng 20 chữ số được làm tròn sau khi diễn giải số và được lưu. Không thể đoán lại các chữ số gốc bị thiếu từ CSV mới. Ngày được chuyển đổi thành ngày nội bộ và được xuất sang một ngôn ngữ khác có thể bị mất dù nguồn có nghĩa là 3 tháng 4 hay tháng 3 4. Đây là lý do tại sao “Tôi sẽ dọn dẹp sau” không phải là bước đầu tiên an toàn. Bảo toàn các byte thô trước khi bất kỳ phần mềm nào có tính năng nhập tự động có cơ hội thay thế chúng.

Thay vào đó, hãy làm việc trên văn bản thô - giữ một bản sao chưa có bảng tính nào được chạm vào và làm sạch nó dưới dạng văn bản trước khi nhập bất kỳ

Làm việc trên bản sao xuất văn bản bằng trình phân tích cú pháp coi các ô là chuỗi. ToolAcre'S CSV Trình dọn dẹp phân tích các dấu phân cách và các trường được trích dẫn trong trình duyệt, đồng thời hiển thị các cảnh báo hàng mà không âm thầm bỏ đi các ô bổ sung. Kiểm tra xem tiêu đề có còn bao gồm các byte đầu ban đầu hay không và liệu mã định danh có chứa các ký tự nguồn chính xác hay không. Việc dọn dẹp các khoảng trống hoặc các bản sao tách biệt với việc diễn giải ý nghĩa của một trường; mã bưu điện phải vẫn là một chuỗi ngay cả khi mọi ký tự đều là một chữ số.

Ví dụ đã hoạt động - xuất sản phẩm với SKU và mã bưu điện, hiển thị những thay đổi trong chuyến đi khứ hồi của bảng tính và những gì được giữ sạch ở cấp độ văn bản

Sử dụng bản xuất minh họa có tiêu đề sku;mã bưu điện;mô tả và các hàng 00042;01234;"Đỏ, nhỏ" và 00043;00105;"Xanh lam, lớn". Quá trình nhập dấu phẩy đơn giản sẽ thu gọn các trường dấu chấm phẩy, trong khi tính năng nhập số tự động có thể biến 00042 và 01234 thành 42 và 1234. CSV Phân tích cú pháp dấu chấm phẩy của Cleaner mang lại ba cột văn bản, bao gồm dấu phẩy được trích dẫn bên trong mỗi mô tả; việc xuất bản sao đã được làm sạch vẫn yêu cầu bạn nhập các cột dưới dạng văn bản vào bảng tính đích. So sánh các tệp thô và tệp khứ hồi trước khi gửi chúng để mua.

Điều này không bao gồm những gì - khôi phục các giá trị đã bị hủy bởi lần lưu trước đó hoặc định cấu hình trình hướng dẫn nhập của bảng tính

Bài đăng này không thể khôi phục các chữ số nhận dạng hoặc số 0 đứng đầu đã bị xóa trong tệp bảng tính đã lưu. Trình dọn dẹp cấp văn bản cũng không định cấu hình trình hướng dẫn nhập của Excel, cài đặt ngôn ngữ của đồng nghiệp hoặc lược đồ cơ sở dữ liệu. Sau khi tệp thô an toàn, hãy làm theo hướng dẫn nhập văn bản của nhà cung cấp bảng tính cho các cột mã và ID. Kiểm tra một mẫu nhỏ thông qua quy trình làm việc chính xác của người nhận; “Mở thành cột” không chứng tỏ “được giữ nguyên mọi chuỗi”.

Sửa tệp trước khi bảng tính nhìn thấy nó — cách trình dọn dẹp ToolAcre CSV cho phép bạn sửa các dấu phân cách, mã hóa và trích dẫn trước khi mở bản xuất trong bảng tính

Sửa tệp trước khi bảng tính nhìn thấy nó, sau đó chọn chế độ nhập giữ nguyên văn bản số nhận dạng. CSV Cleaner có thể sửa chữa dấu phân cách, mã hóa và trích dẫn của bản xuất chưa sửa đổi cục bộ. Nó không làm cho bảng tính ngừng đoán các loại trường thay mặt bạn, vì vậy bản gốc nguyên vẹn và bản so sánh sau nhập vẫn là những biện pháp bảo vệ quan trọng nhất.