Fredit Flow
Quy trình

Làm sạch dữ liệu tự động, mỗi lần một bước được xem lại

03
Tình huống

Một bản xuất lộn xộn, một script và một tệp mới

Làm sạch dữ liệu tự động ở đây nghĩa là một script Python áp dụng các quy tắc đã viết của bạn lên một tệp và lưu kết quả thành tệp mới. Bạn có một bản xuất với khoảng trắng thừa, dòng lặp lại và số được lưu dưới dạng văn bản. Bạn giữ script. Bạn có thể đọc và chạy lại nó, còn tệp gốc không bao giờ là đầu ra.

01

Mở thư mục dự án

Chọn thư mục chứa bản xuất của chính bạn và một bản sao của nó. Các công cụ tệp hoạt động bên trong thư mục cuộc trò chuyện đó.

02

Mô tả các quy tắc

Nói cột nào cần cắt khoảng trắng, khóa nào dùng để tìm bản trùng và chỗ trống sẽ xử lý ra sao. Plan only liệt kê các bước trước.

03

Chạy trên bản sao

Shell chạy script bằng lệnh Python của bạn và hiện mã thoát thực tế cùng số dòng được in ra.

04

Xem lại kết quả

Đọc diff, so sánh tệp mới với tệp gốc và kiểm tra ngẫu nhiên các dòng bằng tay trước khi bạn chấp nhận.

Một script đủ nhỏ để đọc trong một phút

clean_customers.py
rows = [
    {"email": " Ann@Mail.com ", "age": "34"},
    {"email": "ann@mail.com", "age": "34"},
    {"email": "Bo@Mail.com", "age": "n/a"},
]
seen, clean = set(), []
for row in rows:
    email = row["email"].strip().lower()
    if email in seen:
        continue
    seen.add(email)
    try:
        age = int(row["age"].strip())
    except ValueError:
        age = None
    clean.append({"email": email, "age": age})
print("rows in:", len(rows), "rows out:", len(clean))

Nó cắt khoảng trắng, đổi e-mail sang chữ thường, bỏ qua bản lặp bằng một set và chuyển văn bản tuổi thành số hoặc None. Nó chứa 3 dòng tự nghĩ ra. Chạy lên sẽ in 3 vào, 2 ra.

Hai dự án làm sạch dữ liệu, từng bước

Loại bỏ dòng trùng khỏi một tệp CSV lớn

Để loại bỏ dòng trùng khỏi một tệp CSV lớn, trước hết bạn cần một khóa rõ ràng, ví dụ địa chỉ e-mail đã chuẩn hóa, vì các bản trùng khớp hoàn toàn sẽ bỏ sót những dòng chỉ khác nhau về khoảng trắng hoặc chữ hoa chữ thường. Fredit Flow dùng grep để tìm khoảng trắng thừa và chữ viết hoa trong cột khóa, rồi write_file lưu dedupe.py và Shell chạy nó trên bản sao của bản xuất bằng lệnh Python của chính bạn. Script giữ dòng đầu tiên cho mỗi khóa và ghi các dòng còn lại vào một tệp riêng. Tệp gốc vẫn còn. Hãy kiểm tra hai số dòng mà nó in ra, mở tệp xem xét và xác nhận mỗi cặp thật sự là cùng một khách hàng trước khi chấp nhận đầu ra.

Chạy lại script sau khi xem lần hai

Làm sạch dữ liệu CSV hiếm khi xong trong một lượt, và các vòng lặp giữa làm sạch và phân tích là bình thường: một biểu đồ cho thấy giá trị lạ, bạn thêm một quy tắc và chạy lại. Hãy yêu cầu thay đổi. edit_file cập nhật script và hiện diff, Shell chạy lại nó trên cùng bản sao, và lần chạy mới nên ghi vào một tệp đầu ra có tên khác để tệp đầu tiên được giữ lại, điều bạn có thể kiểm tra trong diff. Sau đó chạy nó một lần trên tệp mẫu thứ hai từ cùng nguồn. Nếu mã thoát hoặc số dòng trông sai, hãy dừng lại, đọc lại diff và tự quyết định.

Fredit Flow cho Windows

Bắt đầu với một tệp nhỏ của bạn

Tải Fredit Flow ↗