การแทนที่ค่าสเกลาร์ II
ดังที่กล่าวถึงในวิดีโอ ใน DataFrame ของ pandas เราสามารถแทนที่ค่าได้อย่างตรงไปตรงมา โดยระบุตำแหน่ง (แถวและคอลัมน์) ใน DataFrame แล้วกำหนดค่าใหม่ที่ต้องการแทนที่ นอกจากนี้ยังมีฟังก์ชัน .replace() ซึ่งเป็นวิธีที่ pandas จัดเตรียมไว้สำหรับงานเดียวกัน
ในแบบฝึกหัดนี้จะใช้ DataFrame ชื่อ names ซึ่งประกอบด้วยข้อมูลชื่อยอดนิยมในสหรัฐอเมริกา จำแนกตามปี เพศ และเชื้อชาติ
โจทย์คือให้แทนที่ค่า FEMALE ทั้งหมดในคอลัมน์เพศด้วย GIRL โดยใช้ 2 วิธีต่อไปนี้:
- การแทนที่ค่าสเกลาร์แบบตรง
- การใช้ฟังก์ชัน
.replace()
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การเขียนโค้ดที่มีประสิทธิภาพด้วย pandas
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
start_time = time.time()
# Replace all the entries that has 'FEMALE' as a gender with 'GIRL'
names['Gender'].____[____ == ____] = 'GIRL'
print("Time using .loc[]: {} sec".format(time.time() - start_time))