เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

รวมทุกอย่างเข้าด้วยกัน (1)

ลองนึกถึงแบบฝึกหัด รวมทุกอย่างเข้าด้วยกัน ในบทที่แล้ว ที่เราวิเคราะห์ Twitter อย่างง่าย ๆ ด้วยการเขียนฟังก์ชันนับจำนวนทวีตในแต่ละภาษา ผลลัพธ์ของฟังก์ชันนั้นเป็น dictionary ที่มีภาษาเป็น keys และจำนวนทวีตในภาษานั้นเป็น value

ในแบบฝึกหัดนี้ เราจะปรับปรุงการวิเคราะห์ภาษาบน Twitter ให้ยืดหยุ่นมากขึ้น โดยเพิ่ม default argument ที่รับชื่อคอลัมน์เป็นพารามิเตอร์

เพื่อความสะดวก pandas ถูก import ไว้เป็น pd แล้ว และไฟล์ 'tweets.csv' ถูกโหลดเข้า DataFrame ชื่อ tweets_df นอกจากนี้ยังมีโค้ดบางส่วนจากงานก่อนหน้าให้แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Python เบื้องต้น: การเขียนฟังก์ชัน

ดูคอร์ส

คำแนะนำการฝึกหัด

  • เติมส่วนหัวของฟังก์ชันให้ครบ โดยระบุพารามิเตอร์สำหรับ DataFrame df และพารามิเตอร์ col_name พร้อมกำหนดค่าดีฟอลต์เป็น 'lang' สำหรับชื่อคอลัมน์ใน DataFrame
  • เรียก count_entries() โดยส่ง DataFrame tweets_df และชื่อคอลัมน์ 'lang' แล้วกำหนดผลลัพธ์ให้กับ result1 โปรดสังเกตว่าเนื่องจาก 'lang' คือค่าดีฟอลต์ของพารามิเตอร์ col_name จึงไม่จำเป็นต้องระบุค่านี้อีก
  • เรียก count_entries() โดยส่ง DataFrame tweets_df และชื่อคอลัมน์ 'source' แล้วกำหนดผลลัพธ์ให้กับ result2

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Define count_entries()
def count_entries(____, ____):
    """Return a dictionary with counts of
    occurrences as value for each key."""

    # Initialize an empty dictionary: cols_count
    cols_count = {}

    # 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 = ____

# Call count_entries(): result2
result2 = ____

# Print result1 and result2
print(result1)
print(result2)
แก้ไขและรันโค้ด