Chào các bác, hôm nay em muốn chia sẻ một mẹo nhỏ mà em vừa vọc vạch ra bằng Power Query để nhóm dữ liệu theo khoảng thời gian. Cái này hay dùng khi mình muốn xem số lượng giao dịch theo tuần, theo tháng, hay theo quý chẳng hạn.
Tình huống của em là có một file log ghi lại thời gian truy cập của người dùng, và em muốn biết mỗi ngày có bao nhiêu lượt truy cập. Làm thủ công thì hơi mệt, mà lại không linh hoạt nếu muốn đổi sang nhóm theo tuần hay tháng.
Với Power Query, việc này trở nên đơn giản lắm:
- Đầu tiên, các bác cứ load dữ liệu vào Power Query như bình thường.
- Trong cửa sổ Power Query Editor, chọn cột chứa dữ liệu thời gian (ngày, giờ).
- Vào tab Add Column, chọn Date & Time -> Time Span -> Days (hoặc các tùy chọn khác như Weeks, Months, Quarters tùy nhu cầu).
- Thao tác này sẽ tạo ra một cột mới đếm số ngày từ một mốc nào đó.
- Tiếp theo, vào tab Transform, chọn Group By.
- Ở mục Group by, chọn cột thời gian ban đầu.
- Ở mục New column name, đặt tên cho cột đếm số lượng (ví dụ: Số lượt truy cập).
- Ở mục Operation, chọn Count Rows.
- Nhấn OK.
Kết quả là mình sẽ có một bảng tổng hợp số lượng theo từng ngày. Nếu muốn nhóm theo tuần hay tháng, các bác chỉ cần chọn các tùy chọn tương ứng ở bước 3 là xong. Rất tiện lợi phải không ạ?
Có bác nào có cách nào hay hơn hoặc gặp khó khăn gì khi áp dụng không, chia sẻ cho em với nhé!