Screen Time Analysis cho bạn biết những ứng dụng và trang web nào bạn đã dùng và thời gian sử dụng cho mỗi ứng dụng, trang web là bao nhiêu. Các thông tin ấy được biểu diễn dưới dạng báo cáo đồ họa rất trực quan.
Screen Time Analysis hay công cụ phân tích thời gian sử dụng thiết bị di động xuất hiện lần đầu trên iOS. Sau này, Google cũng phát triển một công cụ tương tự dành cho Android.
Nếu bạn muốn tìm hiểu về cách vận hành của một công cụ phân tích thời gian thì bài viết này dành cho bạn. Trong bài viết này, chúng ta sẽ thử lập trình các tác vụ của Screen Time Analysis bằng ngôn ngữ lập trình Python.
Screen Time Analysis
Screen Time Analysis là tập hợp những tác vụ phân tích và tạo một báo cáo về những ứng dụng và trang web mà người dùng sử dụng trong khoảng bao lâu. iOS cung cấp một trong những báo cáo Screen Time tốt nhất.
Để thực hiện tác vụ phân tích thời gian, dưới đây là dữ liệu mà một bộ dữ liệu lý tưởng cần phải có:
- Ngày.
- Số lần sử dụng ứng dụng.
- Số lượng thông báo từ các ứng dụng.
- Số lần ứng dụng đã được mở.
Bạn có thể tải về một bộ dữ liệu mẫu bằng cách nhấn vào đây.
Trong phần bên dưới, chúng ta sẽ thử lập trình các tác vụ của Screen Time Analysis bằng Python.
Lập trình công cụ Screen Time Analysis bằng Python
Chúng ta hãy bắt đầu công việc bằng cách nhập các thư viện Python cần thiết và bộ dữ liệu:
import pandas as pd
import numpy as np
import plotly.express as px
import plotly.graph_objects as go
data = pd.read_csv("Screentime - App Details.csv")
print(data.head())
Dưới đây là những thông số của dữ liệu mẫu:
Date Usage Notifications Times opened App
0 08/26/2022 38 70 49 Instagram
1 08/27/2022 39 43 48 Instagram
2 08/28/2022 64 231 55 Instagram
3 08/29/2022 14 35 23 Instagram
4 08/30/2022 3 19 5 Instagram
Bây giờ chúng ta sẽ kiểm tra xem bộ dữ liệu mẫu có bất cứ giá trị null (rỗng) nào hay không:
data.isnull().sum()
Date 0
Usage 0
Notifications 0
Times opened 0
App 0
dtype: int64
Bộ dữ liệu không có giá trị null nào. Tiếp theo chúng ta sẽ nhìn vào các số liệu thống kê mô tả của dữ liệu:
print(data.describe())
Usage Notifications Times opened
count 54.000000 54.000000 54.000000
mean 65.037037 117.703704 61.481481
std 58.317272 97.017530 43.836635
min 1.000000 8.000000 2.000000
25% 17.500000 25.750000 23.500000
50% 58.500000 99.000000 62.500000
75% 90.500000 188.250000 90.000000
max 244.000000 405.000000 192.000000
Bây giờ hãy bắt đầu với việc phân tích thời gian sử dụng smartphone của người dùng. Trước tiên, chúng ta hãy xem xét lượng sử dụng của các ứng dụng:
figure = px.bar(data_frame=data,
x = "Date",
y = "Usage",
color="App",
title="Usage")
figure.show()
Tiếp theo chúng ta sẽ xem xét số lượng các thông báo từ các ứng dụng:
figure = px.bar(data_frame=data,
x = "Date",
y = "Notifications",
color="App",
title="Notifications")
figure.show()
Kế đến là xem xét số lần ứng dụng đã được mở:
figure = px.bar(data_frame=data,
x = "Date",
y = "Times opened",
color="App",
title="Times Opened")
figure.show()
Chúng ta thường sử dụng smartphone khi nhận được thông báo từ bất kỳ ứng dụng nào. Do vậy, hãy xem xét mối quan hệ giữa số lượng ứng dụng và thời lượng sử dụng:
figure = px.scatter(data_frame = data,
x="Notifications",
y="Usage",
size="Notifications",
trendline="ols",
title = "Relationship Between Number of Notifications and Usage")
figure.show()
Có một mối liên hệ tuyến tính giữa số lượng thông báo và thời lượng sử dụng. Điều này có nghĩa là nhận nhiều thông báo sẽ dẫn tới việc sử dụng smartphone nhiều hơn.
Kết luận
Vậy là chúng ta đã có thể phân tích thời gian sử dụng smartphone của một người dùng bằng ngôn ngữ lập trình Python. Hy vọng rằng bài viết này có ích với bạn.