รวมทุกอย่างเข้าด้วยกัน (2)
ยอดเยี่ยมมาก! ตอนนี้คุณได้กำหนดฟังก์ชันการทำงานสำหรับวนซ้ำรายการในคอลัมน์และสร้างดิกชันนารีที่มีชื่อภาษาเป็นคีย์และจำนวนทวีตในแต่ละภาษาเป็นค่าแล้ว
ในแบบฝึกหัดนี้ คุณจะนำฟังก์ชันการทำงานที่พัฒนาในแบบฝึกหัดก่อนหน้ามาเขียนเป็นฟังก์ชัน จากนั้นคืนค่าดิกชันนารีที่ได้จากภายในฟังก์ชัน และเรียกใช้ฟังก์ชันด้วยอาร์กิวเมนต์ที่เหมาะสม
เพื่อความสะดวก แพ็กเกจ pandas ได้ถูก import ไว้ในชื่อ pd และไฟล์ 'tweets.csv' ได้ถูกโหลดเข้าสู่ตัวแปร tweets_df แล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Python เบื้องต้น: การเขียนฟังก์ชัน
คำแนะนำการฝึกหัด
- กำหนดฟังก์ชัน
count_entries()ซึ่งมีพารามิเตอร์สองตัว ตัวแรกคือdfสำหรับ DataFrame และตัวที่สองคือcol_nameสำหรับชื่อคอลัมน์ - เติมเนื้อหาในคำสั่ง
if-elseภายในforloop: if คีย์นั้นอยู่ในดิกชันนารีlangs_countให้บวก1เข้าไปในค่าปัจจุบัน else ให้เพิ่มคีย์นั้นลงในlangs_countและกำหนดค่าเป็น1โดยใช้ตัวแปรลูปentryในโค้ดของคุณ - คืนค่าดิกชันนารี
langs_countจากภายในฟังก์ชันcount_entries() - เรียกใช้ฟังก์ชัน
count_entries()โดยส่งtweets_dfและชื่อคอลัมน์'lang'เข้าไป แล้วกำหนดผลลัพธ์ที่ได้ให้กับตัวแปรresult
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Define count_entries()
def ____(____, ____):
"""Return a dictionary with counts of
occurrences as value for each key."""
# Initialize an empty dictionary: langs_count
langs_count = {}
# Extract column from DataFrame: col
col = df[col_name]
# Iterate over lang column in DataFrame
for entry in col:
# If the language is in langs_count, add 1
if entry in langs_count.keys():
____
# Else add the language to langs_count, set the value to 1
else:
____
# Return the langs_count dictionary
# Call count_entries(): result
# Print the result
print(result)