Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การดึงแถวข้อมูลด้วย Pandas .iloc[] ใน Python

Pandas เป็นไลบรารี Python ที่มีชื่อเสียงและใช้กันอย่างกว้างขวางสำหรับการประมวลผลและวิเคราะห์ข้อมูล ในบทความนี้เราจะเรียนรู้วิธีใช้เมธอด .iloc ซึ่งใช้สำหรับอ่านข้อมูลเฉพาะส่วนจาก DataFrame โดยการกรองทั้งแถวและคอลัมน์ด้วยดัชนีตัวเลข

หลักการทำงานของ .iloc

เมธอด .iloc ประมวลผลข้อมูลโดยใช้ดัชนีที่เป็นจำนวนเต็ม (integer-based indexing) ซึ่งอาจจะเป็นส่วนหนึ่งของชุดข้อมูลเดิมหรือไม่ก็ได้ แถวแรกจะมีดัชนี 0 แถวที่สองคือ 1 ตามลำดับ เช่นเดียวกัน คอลัมน์แรกคือดัชนี 0 คอลัมน์ที่สองคือ 1 และต่อไปเรื่อยๆ

ชุดข้อมูลตัวอย่าง

นี่คือชุดข้อมูลที่เราจะใช้ในการสาธิต (ชุดข้อมูล Iris):

Id       SepalLengthCm ...    PetalLengthCm    PetalWidthCm 
Iris-setosa-1          5.1 ...                   1.4       0.2 
Iris-setosa-2          4.9 ...                   1.4       0.2 
Iris-setosa-3          4.7 ...                   1.3       0.2

การเลือกแถวเดี่ยว

เราสามารถเลือกแถวเดี่ยวหรือหลายแถวได้โดยระบุดัชนีตัวเลข ตัวอย่างด้านล่างแสดงการเลือกแถวที่ 0 และแถวที่ 1 แยกกัน

ตัวอย่างโค้ด

import pandas as pd 
# สร้าง DataFrame จากไฟล์ CSV
data = pd.read_csv("D:\\Iris_readings.csv") 
row0 = data.iloc[0] 
row1 = data.iloc[1] 
print(row0) 
print(row1)

ผลลัพธ์

การรันโค้ดข้างต้นจะได้ผลดังนี้:

Id       Iris-setosa-1 
SepalLengthCm    5.1 
SepalWidthCm    3.5 
PetalLengthCm    1.4 
PetalWidthCm     0.2 
Name: 0, dtype: object 

Id       Iris-setosa-2 
SepalLengthCm    4.9 
SepalWidthCm    3 
PetalLengthCm    1.4 
PetalWidthCm    0.2 
Name: 1, dtype: object

การเลือกหลายแถวพร้อมกัน (Slicing)

เราสามารถเลือกหลายแถวพร้อมกันได้โดยใช้ slice notation เช่น 4:8 เพื่อเลือกแถวที่ 4 ถึง 7

ตัวอย่างโค้ด

import pandas as pd 
data = pd.read_csv("D:\\Iris_readings.csv") 
rows = data.iloc[4:8] 
print(rows)

ผลลัพธ์

    Id     SepalLengthCm  SepalWidthCm  PetalLengthCm  PetalWidthCm
4    Iris-setosa-5       5.0           3.6            1.4          0.2
5    Iris-versicolor-51  7.0           3.2            4.7          1.4
6    Iris-versicolor-52  6.4           3.2            4.5          1.5
7    Iris-versicolor-53  6.9           3.1            4.9          1.5

การเลือกทั้งแถวและคอลัมน์

เราสามารถเลือกทั้งแถวและคอลัมน์พร้อมกันได้โดยระบุ slice สำหรับทั้งสองมิติ เช่น data.iloc[4:8, 0:2] จะเลือกแถว 4-7 และคอลัมน์ 0-1

ตัวอย่างโค้ด

import pandas as pd 
data = pd.read_csv("D:\\Iris_readings.csv") 
rows_columns = data.iloc[4:8, 0:2] 
print(rows_columns)

ผลลัพธ์

      Id  SepalLengthCm
4  Iris-setosa-5       5.0
5  Iris-versicolor-51  7.0
6  Iris-versicolor-52  6.4
7  Iris-versicolor-53  6.9

สรุป: เมธอด .iloc เป็นเครื่องมือที่มีประสิทธิภาพสำหรับการเข้าถึงข้อมูลใน DataFrame ด้วยตำแหน่งตัวเลข เหมาะสำหรับการ slicing และการเลือกข้อมูลแบบเฉพาะเจาะจงทั้งแถวและคอลัมน์