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

Python Pandas - แมสก์และแทนที่ NaN ในดัชนี (index.putmask + index.isna)

ในการแมสก์ (mask) และแทนที่ค่า NaN ในดัชนี (Index) ด้วยค่าที่ระบุ ให้ใช้เมธอด index.putmask() ร่วมกับ index.isna()

ขั้นตอนการทำงาน

1. นำเข้าไลบรารีที่จำเป็น

import pandas as pd
import numpy as np

2. สร้างดัชนีที่มี NaN

index = pd.Index([5, 65, 10, np.nan, 75, np.nan])

3. แสดงดัชนี

print("Pandas Index...\n", index)

4. แมสก์และแทนที่ NaN

print("\nMask...\n", index.putmask(index.isna(), 111))

ตัวอย่างโค้ดสมบูรณ์

import pandas as pd
import numpy as np

# สร้างดัชนีที่มี NaN
index = pd.Index([5, 65, 10, np.nan, 75, np.nan])

# แสดงดัชนี
print("Pandas Index...\n", index)

# แสดงจำนวนองค์ประกอบ
print("\nNumber of elements in the index...\n", index.size)

# แมสก์และแทนที่ NaN ด้วย 111
print("\nMask...\n", index.putmask(index.isna(), 111))

ผลลัพธ์

Pandas Index... Float64Index([5.0, 65.0, 10.0, nan, 75.0, nan], dtype='float64')
Number of elements in the index... 6
Mask... Float64Index([5.0, 65.0, 10.0, 111.0, 75.0, 111.0], dtype='float64')

คำอธิบาย

putmask(mask, value) แทนที่ค่าที่ mask เป็น True ด้วย value ที่นี่ index.isna() สร้าง mask ที่ True สำหรับ NaN จึงแทนที่ NaT ทั้งหมดเป็น 111