รวมทุกอย่างเข้าด้วยกัน (1)
ในแบบฝึกหัดก่อนหน้า คุณได้เริ่มเขียนฟังก์ชันของตัวเองแล้ว ทั้งการเพิ่มพารามิเตอร์ การ return ค่าเดียวหรือหลายค่าด้วย tuple และการเรียกใช้ฟังก์ชันที่เขียนขึ้นมาเอง
ในแบบฝึกหัดนี้และแบบฝึกหัดถัดไป เราจะนำทุกแนวคิดเหล่านี้มารวมกันและนำไปใช้กับโจทย์ data science จริง โดยจะโหลดชุดข้อมูลและพัฒนาฟังก์ชันเพื่อดึงข้อมูลเชิงลึกเบื้องต้นออกมา
เป้าหมายของแบบฝึกหัดนี้คือการทบทวนวิธีโหลดชุดข้อมูลเข้าสู่ DataFrame ชุดข้อมูลนี้ประกอบด้วยข้อมูลจาก Twitter และจะวนซ้ำผ่านรายการในคอลัมน์เพื่อสร้างดิกชันนารีที่มี key เป็นชื่อภาษา และ value เป็นจำนวนทวีตในแต่ละภาษา ไฟล์ tweets.csv อยู่ในไดเรกทอรีปัจจุบันของคุณแล้ว
โปรดทราบว่านี่คือข้อมูลจริงจาก Twitter ดังนั้นอาจมีความเสี่ยงที่จะพบคำหยาบหรือเนื้อหาที่ไม่เหมาะสม (ทั้งในแบบฝึกหัดนี้และแบบฝึกหัดถัดไปที่ใช้ข้อมูล Twitter จริง)
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Python เบื้องต้น: การเขียนฟังก์ชัน
คำแนะนำการฝึกหัด
- Import แพ็กเกจ pandas โดยใช้ชื่อย่อ
pd - โหลดไฟล์
'tweets.csv'โดยใช้ฟังก์ชันread_csv()ของ pandas แล้วกำหนด DataFrame ที่ได้ให้กับตัวแปรdf - เติมโค้ดใน
forloop โดยวนซ้ำผ่านcolซึ่งเป็นคอลัมน์'lang'ใน DataFramedf - เติมโค้ดใน
if-elseภายใน for loop: ถ้า key นั้นอยู่ในดิกชันนารีlangs_countแล้ว ให้เพิ่มค่า1ให้กับ key นั้นในดิกชันนารี ถ้าไม่ ให้เพิ่ม key นั้นเข้าไปในlangs_countและกำหนดค่าเป็น1โดยใช้ตัวแปรentryจาก loop ในโค้ดของคุณ
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Import pandas
# Import Twitter data as DataFrame: df
df = ____
# Initialize an empty dictionary: langs_count
langs_count = {}
# Extract column from DataFrame: col
col = df['lang']
# Iterate over lang column in DataFrame
for entry in ____:
# 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:
____
# Print the populated dictionary
print(langs_count)