บทนำ
การหารจำนวนเต็ม (floor division) สามารถนำไปใช้กับ pandas Series กับลำดับข้อมูล Python อื่นๆ เช่น ลิสต์หรือทูเพิล ได้โดยใช้เมธอด floordiv()
เมธอด floordiv()
ใช้สำหรับการหารจำนวนเต็มแบบ element-wise ระหว่าง Series กับ Series, สเกลาร์ หรือ object แบบลิสต์
ตัวอย่างที่ 1: การหารพื้นฐาน
import pandas as pd
import numpy as np
s = pd.Series({'A': None, 'B': 58, 'C': 85, 'D': 28, 'E': np.nan, 'G': 60})
print("Series object:", s)
# ใช้ floordiv() กับลิสต์จำนวนเต็ม
print("Output:")
print(s.floordiv(other=[18, 16, 9, 15, 14, 6]))
คำอธิบาย
Series "s" มีค่า missing ที่ index "A" และ "E" เมธอด floordiv() จะคงค่า NaN ไว้หากไม่ได้กำหนด fill_value
ผลลัพธ์ตัวอย่างที่ 1
Series object:
A NaN
B 58.0
C 85.0
D 28.0
E NaN
G 60.0
dtype: float64
Output:
A NaN
B 3.0
C 9.0
D 1.0
E NaN
G 10.0
dtype: float64
ตัวอย่างที่ 2: ใช้ fill_value แทนค่า Missing
import pandas as pd
import numpy as np
s = pd.Series({'A': None, 'B': 58, 'C': 85, 'D': 28, 'E': np.nan, 'G': 60})
print("Series object:", s)
# ใช้ floordiv() พร้อม fill_value=20
print("Output:")
print(s.floordiv(other=[18, 16, 9, 15, 14, 6], fill_value=20))
ผลลัพธ์ตัวอย่างที่ 2
Series object:
A NaN
B 58.0
C 85.0
D 28.0
E NaN
G 60.0
dtype: float64
Output:
A 1.0
B 3.0
C 9.0
D 1.0
E 1.0
G 10.0
dtype: float64
ค่า missing ทั้งหมดถูกแทนที่ด้วย 20 ก่อนทำการหาร: 20 // 18 = 1, 20 // 14 = 1 เป็นต้น