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

การประมวลผลข้อมูล Twitter ขนาดใหญ่

บางครั้งข้อมูลที่ต้องประมวลผลมีขนาดใหญ่เกินกว่าที่หน่วยความจำของคอมพิวเตอร์จะรองรับได้ ซึ่งเป็นปัญหาที่นักวิทยาศาสตร์ข้อมูลพบเจอบ่อย วิธีแก้ไขคือการประมวลผลแหล่งข้อมูลทีละ chunk แทนที่จะโหลดทั้งหมดพร้อมกันในครั้งเดียว

ในแบบฝึกหัดนี้ จะได้ลองทำแบบนั้นดู โดยประมวลผลไฟล์ csv ขนาดใหญ่ของข้อมูล Twitter ในลักษณะเดียวกับที่เคยทำกับ 'tweets.csv' ในแบบฝึกหัด Bringing it all together ของคอร์สก่อนหน้า แต่คราวนี้จะประมวลผลครั้งละ 10 รายการ

หากสนใจวิธีดึงข้อมูลจาก Twitter เพื่อนำไปใช้งานบนระบบของตัวเอง สามารถดูได้ที่ Part 2 ของคอร์ส Importing Data in Python บน DataCamp

ได้นำเข้าแพ็กเกจ pandas ในชื่อ pd แล้ว และไฟล์ 'tweets.csv' อยู่ใน directory ปัจจุบันพร้อมให้ใช้งาน

โปรดทราบว่านี่คือข้อมูลจริงจาก Twitter ซึ่งอาจมีเนื้อหาที่ไม่เหมาะสมหรือภาษาหยาบคายปะปนอยู่ (ทั้งในแบบฝึกหัดนี้และแบบฝึกหัดถัดไปที่ใช้ข้อมูล Twitter จริง)

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

Python Toolbox

ดูคอร์ส

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

  • สร้าง dictionary ว่างเปล่าชื่อ counts_dict สำหรับเก็บผลลัพธ์จากการประมวลผลข้อมูล Twitter
  • วนซ้ำผ่านไฟล์ 'tweets.csv' โดยใช้ for loop ใช้ chunk เป็นตัวแปรลูป และวนซ้ำผ่านการเรียก pd.read_csv() โดยกำหนด chunksize เป็น 10
  • ในลูปด้านใน ให้วนซ้ำผ่านคอลัมน์ 'lang' ใน chunk โดยใช้ for loop และใช้ entry เป็นตัวแปรลูป

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

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

# Initialize an empty dictionary: counts_dict


# Iterate over the file chunk by chunk
for ____ in ____:

    # Iterate over the column in DataFrame
    for ____ in ____:
        if entry in counts_dict.keys():
            counts_dict[entry] += 1
        else:
            counts_dict[entry] = 1

# Print the populated dictionary
print(counts_dict)
แก้ไขและรันโค้ด