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

Python Pandas - หาตำแหน่งจำนวนเต็มของป้ายกำกับ และค้นหาค่า Index ก่อนหน้าหากไม่มีค่าตรงกัน

เพื่อหาตำแหน่งจำนวนเต็มของป้ายกำกับที่ร้องขอ และค้นหาค่า Index ก่อนหน้า (previous) หากไม่มีค่าตรงกันพอดี ให้ใช้เมธอด index.get_loc() ตั้งค่าพารามิเตอร์ method เป็น ffill (forward fill)

เริ่มต้นด้วยการนำเข้าไลบรารีที่จำเป็น:

import pandas as pd

สร้าง Pandas Index:

index = pd.Index([10, 20, 30, 40, 50, 60, 70])

แสดง Pandas Index:

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

หาตำแหน่งของ Index ก่อนหน้าหากไม่มีค่าตรงกันพอดี ค่าถูกตั้งเป็น "ffill" ผ่านพารามิเตอร์ "method" ของ get_loc():

print("\nGet the location of the previous index if no exact match...\n", index.get_loc(45, method="ffill"))

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

import pandas as pd

# Creating Pandas index
index = pd.Index([10, 20, 30, 40, 50, 60, 70])

# Display the Pandas index
print("Pandas Index...\n", index)

# Return the number of elements in the Index
print("\nNumber of elements in the index...\n", index.size)

# get integer location from the given index
print("\nDisplay integer location from given index...\n", index.get_loc(20))
print("\nDisplay integer location from given index...\n", index.get_loc(50))

# Get the location of the previous index if no exact match
# The value is set "ffill" using the "method" parameter of the get_loc()
print("\nGet the location of the previous index if no exact match...\n", index.get_loc(45, method="ffill"))

เอาต์พุต

จะได้ผลลัพธ์ดังนี้:

Pandas Index... Int64Index([10, 20, 30, 40, 50, 60, 70], dtype='int64')
Number of elements in the index... 7
Display integer location from given index... 1
Display integer location from given index... 4
Get the location of the previous index if no exact match... 3