Pandas 03 : Basic Operations

Data SciencePandas 03 : Basic Operations

Pandas operation

ในบทนี้เราจะมาเรียนเรื่องการใช้งาน basic operation กันครับ นั่นคือ Data Types, การ Explore data, การเรียกใช้ข้อมูล และการ Filter Data ภายใน DataFrame

Data Types

สิ่งแรกที่เราจะพูดถึงคือ Data Types ของ Pandas นะครับ

Data Type คือประเภทของข้อมูลครับ เราจะคุ้นเคยกันดีว่าการเก็บข้อมูลใน database นั้นจะต้องกำหนดประเภทของข้อมูลไว้ เพื่อให้เราสามารถ insert หรือ ทำการคำนวณได้ถูกต้อง

ใน Pandas นั้นจะมี Data type ทั้งหมดตามตารางข้างล่างนี้ครับ

alt text

Source: https://pbpython.com/pandas_dtypes.html

เมื่อเราทำการ Load ข้อมูลจาก dataset เขามาเก็บไว้ที่ DataFrame Pandas จะทำการระบุ DataType ให้โดยอัตโนมัติ และเราสามารถใช้คำสั่ง dtypes หรือ info() ตรวจสอบข้อมูลได้ครับ

alt text

alt text

Explore data

ถึงตอนนี้แล้วเราได้ทดลองใช้งาน head() และ tail() และ info() ไปแล้วนะครับ

alt text

ต่อไปเรามาลองใช้ function เพื่อหาขนาดของ DataFrame กันครับ นั่นคือ len() และ shape() ครับ

shape() จะบอกเราว่า DataFrame มีกี่ Row และ Column

ส่วน len() นั้นจะบอกว่ามีทั้งหมดกี่ Row ครับ

alt text

Accessing data

การเข้าถึงข้อมูลหรือ value นั้นสามารถทำได้ 2 วิธีครับ

  1. ใช้ label หรือชื่อ column
  2. ใช้ index ของ column ในการเรียกข้อมูล ตามปกติ index จะเริ่มต้นที่ 0 และเพิ่มขึ้นทีละ 1 ไปเรื่อยๆ จนครบทุก column

การเรียกข้อมูลโดยใช้ชื่อ column ทำได้ตามตัวอย่างครับ

df['Product']

ซึ่งจะเป็นการแสดงข้อมูลทั้งหมดใน column Product นั่นเองครับ

alt text

หรือถ้าหากเราต้องการข้อมูลบางส่วน เราก็สามารถใช้ index ในการเลือกข้อมูลมาแสดงผลได้ครับ เช่น

df['Product'][0]

จะแสดง value แรกของ Product ขึ้นมา สังเกตนะครับ ว่า Python จะเริ่ม index ที่ 0 เสมอ

alt text

แล้วถ้าหากเราต้องการเลือกข้อมูลมากกว่า 1 ค่า เราจะใช้คำสั่งอย่างไรได้บ้าง ก็ใช้เป็น

df['Product'][0:10]

จะแสดงข้อมูล 10 ตั้งแต่ index 0-10 ค่าครับ

ซึ่งการเรียกข้อมูลแบบนี้ เราจะได้เป็น Series นะครับ แต่ถ้าหากเราอยากได้ข้อมูลออกมาเป็น DataFrame เราจะต้องใช้ [[]] แบบนี้ครับ

df[['Product']]

alt text

และเราสามารถเลือกข้อมูลหลาย Column เราสามารถทำได้โดยใส่ชื่อ Column เข้าไปเพิ่มใน List ได้เลยครับ

df[['Product','Revenue']]

เมื่อข้อมูลอยู่ในรูปแบบ DataFrame ทำให้เราใช้ operation ของ Dataframe ได้

alt text

Filtering DataFrames

เราสามารถ Filter ข้อมูลใน DataFrame โดยใช้ Boolean Series ครับ ยกตัวอย่าง

alt text

จากนั้นเราก็นำ Boolean series ไปเรียกใน bracket แบบนี้ได้เลยครับ

df[df['Revenue'] > 1200000] # เลือกข้อมูลจาก DataFrame ที่มียอดขายมากกว่า 1,200,000

alt text

ถ้าเรามีเงื่อนไขเพิ่มเติมเข้ามา เราสามารถใส่เงื่อนไขเข้าไปเพิ่มได้ครับ

เช่น หากเราต้องการดูข้อมูลยอดขายที่มากกว่า 1,200,000 เฉพาะในปี 2014 ว่ามีสินค้าอะไรบ้าง

df[(df['Revenue'] > 1200000) & (df['Year'] == 2014)]

alt text

สังเกตว่าผมใช้เครื่องหมาย & เพื่อระบุว่าต้องเป็นจริงทั้งคู่ครับ

หรือถ้าหากเราอยากได้ยอดขายสินค้าที่มากกว่า 1,200,000 หรือขายได้มากกว่า 60,000 ชิ้น ให้ใช้เครื่องหมาย | แทนครับ ซึ่งเราสามารถเขียน code ได้แบบนี้ครับ

df[(df['Revenue'] > 1200000) | (df['Quantity'] > 60000)]

alt text

คราวนี้เรามาลองเลือกข้อมูลเฉพาะ Product, Revenue, Quantity ที่มียอดขาย ยอดขายสินค้าที่มากกว่า 1,200,000 หรือขายได้มากกว่า 60,000 ลองเขียน code ดูมั้ยครับ?

เฉลย

alt text

Practice

ถึงตอนนี้เราคงพอจะเข้าใจวิธีการเรียกดูข้อมูลใน DataFrame แล้ว ก่อนจบบทนี้เดี๋ยวผมขอให้ลองทำแบบฝึกข้างล่างดูนะครับ ทำเสร็จแล้วอยากให้ช่วยตรวจก็ส่ง Comment มาได้เลยครับผม เจอกันบทหน้านะครับ

  1. ให้สร้าง DataFrame แสดงข้อมูลสินค้าที่มี Revenue มากกว่า 1,500,000
  2. ให้สร้าง DataFrame แสดงข้อมูลสินค้าที่มี Quantity น้อยกว่า 2
  3. ให้สร้าง DataFrame แสดงข้อมูลสินค้าที่มี Gross margin มากกว่า 0.75 เฉพาะ Retailer country ประเทศ Italy

Related articles

Vibe Coding: เทรนด์ใหม่ในการพัฒนาซอฟต์แวร์ด้วย AI

ทำความรู้จักกับ Vibe Coding เทรนด์ใหม่ที่ใช้ AI ในการพัฒนาซอฟต์แวร์ ช่วยให้โค้ดดิ้งง่ายขึ้นและมีประสิทธิภาพมากขึ้น

DeepSeek R1: ผู้ท้าชิงใหม่ด้านการใช้เหตุผลของ AI ที่น่าจับตา

DeepSeek R1 โมเดล AI ใหม่ ที่มีความสามารถด้านการใช้เหตุผลใกล้เคียง OpenAI o1 แต่ต้นทุนถูกกว่าถึง 27 เท่า จะเปลี่ยนวงการ AI หรือไม่?

AI หนุนอนาคตสดใส Product Manager แต่ยังขาดแคลนทักษะ AI

AI ทำให้การพัฒนาซอฟต์แวร์เร็วขึ้น ส่งผลให้ความต้องการ Product Manager เพิ่มสูง แต่ยังขาดแคลนผู้มีทักษะด้าน AI

Common Sense Recommendation Engine

ปฏิวัติระบบแนะนำสินค้าด้วย Common Sense Recommendation Engine และพลังของ AI 🤖

Ollama: แพลตฟอร์มจัดการ LLM แบบออฟไลน์ที่น่าจับตามอง

Ollama คือเครื่องมือที่ช่วยให้นักพัฒนาสามารถใช้งาน LLM บนเครื่องตัวเองได้ โดยไม่ต้องพึ่งพาคลาวด์ เน้นความปลอดภัยและความเป็นส่วนตัวสูง
บทความก่อนหน้านี้
บทความถัดไป

Related Article

Make AI Agents: ปฏิวัติระบบอัตโนมัติด้วย Make.com

ค้นพบวิธีใช้ AI Agents บน Make.com เพื่อสร้างระบบอัตโนมัติอัจฉริยะที่ปรับตัวได้ตามสถานการณ์จริง เพิ่มประสิทธิภาพการทำงานแบบก้าวกระโดด

AI Agents: การปฏิวัติระบบอัตโนมัติแห่งอนาคต

AI Agents คืออะไร? ทำไมถึงเปลี่ยนโฉมหน้าการทำ Automation และใช้งานอย่างไรให้เกิดประโยชน์สูงสุดสำหรับธุรกิจของคุณ

Augment Code: ปฏิวัติการพัฒนาซอฟต์แวร์ด้วย AI ที่เข้าใจโค้ดทั้งระบบ

Augment Code เป็น AI agent ที่เข้าใจสถาปัตยกรรมโค้ดทั้งหมด ช่วยแก้ปัญหาใหญ่ในการพัฒนาซอฟต์แวร์ที่มีโค้ดซับซ้อนหลายพันไฟล์
สอบถามข้อมูล