Chuyển đổi dữ liệu hàng tháng thành hàng tuần trong python

Một nhiệm vụ phổ biến nhưng nhàm chán đáng ngạc nhiên mà tôi gặp phải trong các dự án mô hình hóa tiếp thị và phân tích dữ liệu là biến dữ liệu hàng tháng hoặc hàng tuần thành dữ liệu hàng ngày. Ví dụ: báo cáo liên kết của bạn chỉ có thể được tổng hợp hàng tháng hoặc phân tích SEO của bạn chỉ xuất dữ liệu được chia nhỏ theo tuần

Dữ liệu hàng ngày là định dạng lý tưởng nhất vì nó mang lại cho bạn nhiều điểm dữ liệu hơn 7 lần so với hàng tuần và ~30 lần điểm dữ liệu so với hàng tháng. Đây cũng là cách linh hoạt nhất vì bạn luôn có thể cuộn dữ liệu hàng ngày lên hàng tuần hoặc hàng tháng sau đó. nó không phải là dễ dàng để đi theo con đường khác

Trong những trường hợp này bạn sẽ làm gì? . Nếu bạn tưởng tượng mình chỉ có hai dấu chấm dữ liệu, một dấu chấm cho mỗi tuần. nội suy hoạt động bằng cách vẽ một đường thẳng ở giữa hai dấu chấm đó, cung cấp cho bạn các giá trị thực tế cho mỗi ngày

Điều này hơi khó hiểu khi thực hiện trong Python, nhưng may mắn thay, tôi đã mã nguồn mở mã nguồn của mình để giúp mọi người dễ dàng hơn. Hãy xem phép nội suy từ hàng tuần và hàng tháng sang hàng ngày trông như thế nào

Chuyển đổi dữ liệu hàng tháng thành hàng tuần trong python
Dữ liệu hàng ngày

Trên đây là tập dữ liệu thực tế cho các tìm kiếm về cụm từ thương hiệu của bạn. Bạn có thể thấy nó đi theo một xu hướng hàng tuần rõ ràng, cũng như có một chuyển động chung đi lên và sang phải, với các đợt tăng đột biến lớn vào một số ngày. Nếu chúng ta lấy cùng dữ liệu hàng ngày đó và nhóm nó hàng tuần, thì đây là kết quả

Chuyển đổi dữ liệu hàng tháng thành hàng tuần trong python
Dữ liệu hàng tuần

Tất nhiên, bây giờ trong trường hợp của chúng tôi, chúng tôi có dữ liệu thực hàng ngày để so sánh, nhưng hãy giả vờ trong giây lát rằng chúng tôi chỉ được cung cấp dữ liệu hàng tuần. Chúng ta đang mất bao nhiêu định nghĩa ở đây? . Hãy sử dụng chức năng nội suy của chúng tôi để vẽ các đường giữa các dấu chấm đó. Vì vậy, chúng tôi sẽ tăng quy mô dự phòng từ 127 điểm lên 882

Chuyển đổi dữ liệu hàng tháng thành hàng tuần trong python
Dữ liệu hàng tuần được nội suy

Bạn có thể thấy hình dạng giống hệt nhau được duy trì như thế nào từ biểu đồ này sang biểu đồ khác – chúng ta không thể 'biết' bất cứ điều gì về xu hướng giữa các tuần nếu chúng ta chỉ có dữ liệu hàng tuần, vì vậy điều tốt nhất chúng ta có thể làm là duy trì hình dạng giống nhau nhưng . Hãy xem chúng ta mất thêm bao nhiêu độ nét mỗi tháng

Chuyển đổi dữ liệu hàng tháng thành hàng tuần trong python
Dữ liệu hàng tháng

Bây giờ, chúng tôi chỉ còn 30 hàng, từ dữ liệu có giá trị gần 2 năm rưỡi. Hy vọng bạn có thể thấy rằng việc xây dựng một mô hình dựa trên dữ liệu hàng tháng sẽ không chính xác trừ khi chúng ta có một lượng lịch sử kha khá. Bất cứ khi nào có thể, chúng tôi muốn chuyển dữ liệu hàng tháng đó thành dữ liệu hàng ngày, để ít nhất nó có thể hỗ trợ các biến (hàng ngày) khác trong mô hình. Dữ liệu hàng tháng được chuyển đổi thành hàng ngày với Nội suy trông như thế nào?

Chuyển đổi dữ liệu hàng tháng thành hàng tuần trong python
Dữ liệu hàng tháng được nội suy

Bạn có thể thấy ở đây cùng một hình dạng chung xuất hiện, nhưng chúng tôi đã mất rất nhiều định nghĩa. Chúng tôi không thực sự nhìn thấy bất kỳ đột biến nào mà chúng tôi đã thấy trong dữ liệu hàng tuần và hàng ngày. Chúng tôi cũng gặp sự cố vào cuối tháng trước, trong đó (không chính xác) kéo mức trung bình xuống do thiếu định nghĩa trong dữ liệu. Được rồi, cuối cùng chúng ta hãy tập hợp tất cả những thứ này lại với nhau, để chúng ta có thể xem nó ở một nơi

Chuyển đổi dữ liệu hàng tháng thành hàng tuần trong python
Dữ liệu hàng ngày, hàng tuần và hàng tháng được nội suy

Điều này đặt ra tất cả khá rõ ràng. Chắc chắn chúng ta mất rất nhiều chi tiết ở đây, nhưng nếu hàng tuần hoặc hàng tháng là tất cả những gì bạn cần, thì Nội suy thực hiện khá tốt việc nắm bắt các xu hướng cơ bản. Vì vậy, nếu các biến còn lại của bạn là hàng ngày và bạn cần lấy mẫu lại các biến hàng tháng hoặc hàng tuần của mình cho phù hợp, thì Nội suy là một lựa chọn khá tốt

Ghi chú. điều này sẽ không giúp ích gì cho bạn nếu TẤT CẢ dữ liệu của bạn là hàng tuần hoặc hàng tháng, nhưng nếu hầu hết các biến chính của bạn là hàng ngày và bạn chỉ cần chuyển đổi một số biến hàng tháng hoặc hàng tuần để phù hợp với mô hình, hãy tiếp tục

*Mã tôi sử dụng ở đây đều nằm trong thư viện Nguồn mở và Máy tính xách tay Jupyter mà bạn có thể truy cập tại đây. Hãy sử dụng nó và cải thiện nó. *