Tỷ lệ
Mặc dù không hẳn là một thước đo tầm quan trọng trong mạng lưới, khái niệm bị "ratio" là một thước đo riêng có của Twitter, thường dùng để đánh giá một tweet không được ưa chuộng. "The Ratio" được tính bằng cách lấy số lượt trả lời chia cho số lượt retweet. Với mục đích của bài này, về mặt khái niệm, hợp lý nhất là chỉ dùng in-degree của cả mạng retweet và mạng trả lời.
Các mạng G_rt và G_reply, cùng với column_names = ['screen_name', 'degree'], đã được nạp sẵn cho bạn.
Bài tập này là một phần của khóa học
Phân tích dữ liệu mạng xã hội bằng Python
Hướng dẫn bài tập
- Tính in-degree cho mạng retweet bằng phương thức đồ thị
.in_degree(). - Làm tương tự cho mạng trả lời.
- Gộp hai DataFrame lại với nhau bằng
.merge(). - Tính tỷ lệ. Tên các cột là
degree_replyvàdegree_rt.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Calculate in-degrees and store in DataFrame
degree_rt = pd.DataFrame(list(____.____()), columns = column_names)
degree_reply = pd.DataFrame(list(____.____()), columns = column_names)
# Merge the two DataFrames on screen name
ratio = ____.____(____, on = 'screen_name', suffixes = ('_rt', '_reply'))
# Calculate the ratio
ratio['ratio'] = ____ / ____
# Exclude any tweets with less than 5 retweets
ratio = ratio[ratio['degree_rt'] >= 5]
# Print out first five with highest ratio
print(ratio.sort_values('ratio', ascending = False).head())