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

Python Pandas - การเติมค่าคอลัมน์ที่ขาดหายไปด้วยค่ามัธยฐาน


ค่ามัธยฐานแยกครึ่งบนจากครึ่งล่างของข้อมูล ใช้เมธอด fillna() และตั้งค่ามัธยฐานเพื่อเติมคอลัมน์ที่ขาดหายไปด้วยค่ามัธยฐาน ขั้นแรก ให้เรานำเข้าไลบรารีที่จำเป็นด้วยนามแฝงที่เกี่ยวข้อง -

import pandas as pd
import numpy as np

สร้าง DataFrame ที่มี 2 คอลัมน์ เราได้ตั้งค่า NaN โดยใช้ Numpy np.NaN

dataFrame = pd.DataFrame(
   {
      "Car": ['Lexus', 'BMW', 'Audi', 'Bentley', 'Mustang', 'Tesla'],"Units": [100, 150, np.NaN, 80, np.NaN, np.NaN]
   }
)

ค้นหาค่ามัธยฐานของค่าคอลัมน์ด้วย NaN เช่น สำหรับคอลัมน์หน่วยที่นี่ แทนที่ NaN ด้วยค่ามัธยฐานของคอลัมน์ที่มันตั้งอยู่โดยใช้ค่ามัธยฐาน () บนคอลัมน์หน่วย -

dataFrame.fillna(dataFrame['Units'].median(), inplace = True)

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

import pandas as pd
import numpy as np

# Create DataFrame
dataFrame = pd.DataFrame(
   {
      "Car": ['Lexus', 'BMW', 'Audi', 'Bentley', 'Mustang', 'Tesla'],"Units": [100, 150, np.NaN, 80, np.NaN, np.NaN]
   }
)

print"DataFrame ...\n",dataFrame

# finding median of the column values with NaN i.e, for Units columns here
# Replace NaNs with the median of the column where it is located
dataFrame.fillna(dataFrame['Units'].median(), inplace = True)

print"\nUpdated Dataframe after filling NaN values with median...\n",dataFrame

ผลลัพธ์

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

DataFrame ...
       Car   Units
0    Lexus   100.0
1      BMW   150.0
2     Audi     NaN
3  Bentley    80.0
4  Mustang     NaN
5    Tesla     NaN

Updated Dataframe after filling NaN values with median...
       Car   Units
0    Lexus   100.0
1      BMW   150.0
2     Audi   100.0
3  Bentley    80.0
4  Mustang   100.0
5    Tesla   100.0