Viết hàm thông báo giá trị hiếm gặp trong bảng dữ liệu về năm sinh

Giá trị biệt lệ trong dữ liệu thường là giá trị cực đoan cả ở 2 khía cạnh tích cực và tiêu cực: Nếu nó là thật, nó sẽ tiết lộ cho chúng ta thấy nhiều cái thú vị ở đời; Nhưng trường hợp thứ hai cũng rất dễ xảy ra: giá trị quá khác biệt cũng thường là dữ liệu không chính xác; Trong bài viết này, tôi sẽ viết hàm thống kê số lần lặp lại của năm sinh nào đó. Điều này sẽ cho chúng ta cái nhìn tổng quan về phổ phân tán dữ liệu trong …

Đọc thêm

Xác thực ngày tháng năm sinh là ngày tháng năm tồn tại thực trong PHP

Vậy là chúng ta đã tiến một bước khá dài trong việc xử lý, chuẩn hóa lượng lớn dữ liệu ngày tháng thông qua bài viết về phân tích dữ liệu thô và viết hàm xử lý tổng quát. Nhưng có một thiếu sót khá nghiêm trong trong các bài viết đó, đấy là nó xác thực được và đồng bộ cấu trúc ngày tháng năm, nhưng vẫn chưa chắc chắn được đó có phải là ngày tháng năm thực hay không. Điều này dễ xảy ra với số lượng không nhỏ trong một tệp dữ liệu lớn, dù tôi …

Đọc thêm

Nếu đã biết cấu trúc dữ liệu của ngày tháng năm sinh, chúng ta có thể xử lý thêm gì nữa

Trong bài viết trước, tôi đã viết 2 hàm xử lý ngày tháng năm dạng thô. Nó có tác dụng rất tốt trong việc thống kê tổng thể dữ liệu của chúng ta. Cho ta biết cấu trúc dữ liệu chủ yếu của nó, cũng như xuất ra các dữ liệu không hợp chuẩn. Bây giờ câu hỏi là: giả sử chúng ta biết được cấu trúc dữ liệu của ngày tháng năm rồi, chúng ta nên làm gì tiếp? Có mấy vấn đề: Đối xử thế nào với dữ liệu sai? Đối xử thế nào với dữ liệu khác …

Đọc thêm

Bài toán phân tích dữ liệu ngày tháng năm sinh để báo cáo sơ bộ các kiểu dữ liệu hiện có

Phiên bản nâng cấp của bài viết này đã có ở đây: Hàm PHP thông báo đặc điểm dữ liệu ngày tháng sinh đầu vào với lượng dữ liệu lớn (v1.2). Trong bài viết trước tôi có lảm nhảm về chuyện viết mã quá cẩn thận dẫn đến việc xử lý chậm dữ liệu ngày tháng. Tuy nhiên khi nhìn lại đống dữ liệu hiện có thì quả là việc sử dụng mã tổng quát rất quan trọng. Ít nhất cũng trong giai đoạn phân tích dữ liệu ban đầu để đề ra phương hướng giải quyết chuẩn xác. Vì …

Đọc thêm

Thực hành RegEx cơ bản trong PHP

Chúng ta đã tìm hiểu cú pháp cơ bản của RegEx trong bài viết này, hôm nay tôi và các bạn sẽ tìm hiểu việc áp dụng nó trong PHP. Tài liệu tham khảo dễ hiểu là W3School và các tài liệu khác tôi tìm thấy trên mạng. Trong phần đầu W3School định nghĩa Regular Expression (biểu thức chính quy) như thế này: Regex là một chuỗi các ký tự tạo thành mẫu tìm kiếm. Khi bạn tìm kiếm dữ liệu trong một văn bản (text), bạn có thể sử dụng mẫu tìm kiếm để mô tả bạn muốn tìm …

Đọc thêm

Tập chơi với cú pháp cơ bản của RegEx

RegEx viết đầy đủ là Regular Expression, tên tiếng Việt là biểu thức chính quy. Ưu điểm lớn nhất của RegEx: nó giúp chúng ta đỡ phải nghĩ những dòng mã cồng kềnh, vì RegEx có khả năng xử lý chuỗi rất mạnh. RegEx cũng được nhiều ngôn ngữ lập trình, ứng dụng hỗ trợ. PHP và SQL cũng hỗ trợ RegEx rất tốt. Mới đầu bạn nhìn cấu trúc của RegEx sẽ rất là ngao ngán, chẳng hạn đây là cú pháp bắt chuỗi ngày tháng năm tiêu chuẩn: Cái gì đây? Sao nhiều dấu \ rồi /, [, …

Đọc thêm

Kiểm tra họ tên hợp chuẩn nhanh hơn với RegEx

Tôi có viết bài về việc xử lý họ tên bằng PHP trước đây, dù các đoạn mã đó cũng thú vị thì với RegEx vấn đề phát hiện lỗi được xử lý nhanh hơn đáng kể. Tuy nhiên chúng ta cần lưu ý là cú pháp của RegEx chưa tính đến các ngôn ngữ quốc tế, nên cú pháp viết gọn [a-z] để đại diện cho các ký tự từ a đến z không có cái tương ứng trong tiếng Việt (ư, á, ô, ờ, v.v..). Do vậy chúng ta cần bổ sung thủ công vào. Code mẫu sẽ …

Đọc thêm

Lọ mọ viết cái mã chuẩn hóa ngày tháng năm đến khổ, hóa ra dùng một dòng Regular Expression là xong!

Vào đề luôn anh chị em ạ, nó là cái dòng này: Xử lý tuốt chỉ nhờ một dòng trên mà thôi, nó sẽ bắt đủ các dạng ngày tháng năm thường dùng: 2 ký tự đầu bắt buộc là số, 2 ký tự tiếp cũng bắt buộc là số, các ký tự năm có thể là 2 số hoặc 4 số; không cho phép chữ cái, ký tự đặc biết trong chuỗi. Chỉ có số mà thôi; ngày, tháng năm có thể được phân cách bằng / hoặc – hoặc dấu . 2 ký tự đầu có thể là …

Đọc thêm

Đồng bộ mã hóa tiếng Việt có dấu là điều phải làm để có được kết quả thống kê chính xác

Phiên bản nâng cấp của bộ chuyển đổi mã hex tiếng Việt đã có ở bài viết này: Các hàm PHP chuyển đổi ký tự tiếng Việt từ dạng mã hex ít phổ biến về dạng phổ biến và ngược lại (v1.2) Trong bài viết trước, tôi có nói về bộ chuyển mã hóa tiếng Việt để nó có bộ mã hóa UTF-8 đồng nhất, đây chính là hàm xử lý việc đó: Đoạn mã này sẽ chuyển các ký tự tiếng Việt có dấu (sắc, huyền, hỏi, ngã, nặng) đang được mã hóa ở dạng không phổ thông về …

Đọc thêm

Xử lý dữ liệu họ tên sai lệch như thế nào trong hệ thống database lớn?

Đối với dữ liệu lớn, thu từ nhiều nguồn, tôi phát hiện ra là việc xử lý đồng bộ định dạng và sửa lỗi cực kỳ quan trọng và có thể tốn thời gian không kém việc phân tích chính thức sau này. Xử lý dữ liệu sai lệch là điều bắt buộc cần phải làm vì nếu không kết quả phân tích được xem là vô nghĩa vì không thể tin cậy được (ít nhất ở khía cạnh không ước tính được độ sai lệch dữ liệu). Trước khi xử lý dữ liệu sai lệch chúng ta cần xác …

Đọc thêm