Tổng hợp tất cả (2)
Tuyệt vời, bạn vừa khái quát hóa bài phân tích ngôn ngữ trên Twitter ở chương trước bằng cách thêm đối số mặc định cho tên cột. Giờ bạn sẽ nâng cấp hàm này thêm một bước nữa bằng cách cho phép người dùng truyền đối số linh hoạt, tức là trong trường hợp này có thể truyền bao nhiêu tên cột tùy thích!
Như trước, để thuận tiện, pandas đã được nhập với bí danh pd và tệp 'tweets.csv' đã được nạp vào DataFrame tweets_df. Một phần mã từ bài làm trước của bạn cũng được cung cấp.
Bài tập này là một phần của khóa học
Giới thiệu về Functions trong Python
Hướng dẫn bài tập
- Hoàn thiện phần khai báo hàm bằng cách bổ sung tham số cho DataFrame
dfvà đối số linh hoạt*args. - Hoàn thiện vòng lặp
forbên trong định nghĩa hàm để vòng lặp chạy trên tupleargs. - Gọi
count_entries()với DataFrametweets_dfvà tên cột'lang'. Gán kết quả choresult1. - Gọi
count_entries()với DataFrametweets_dfvà các tên cột'lang'và'source'. Gán kết quả choresult2.
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.
# Define count_entries()
def ____(____, ____):
"""Return a dictionary with counts of
occurrences as value for each key."""
#Initialize an empty dictionary: cols_count
cols_count = {}
# Iterate over column names in args
for col_name in ____:
# Extract column from DataFrame: col
col = df[col_name]
# Iterate over the column in DataFrame
for entry in col:
# If entry is in cols_count, add 1
if entry in cols_count.keys():
cols_count[entry] += 1
# Else add the entry to cols_count, set the value to 1
else:
cols_count[entry] = 1
# Return the cols_count dictionary
return cols_count
# Call count_entries(): result1
result1 = count_entries(____, ____)
# Call count_entries(): result2
result2 = count_entries(____, ____, ____)
# Print result1 and result2
print(result1)
print(result2)