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

Python Pandas - รับค่าจากระดับเฉพาะใน Multiindex


ในการรับค่าจากระดับเฉพาะใน Multiindex ให้ใช้ multiIndex.get_level_values() วิธีการในนุ่น

ขั้นแรก นำเข้าไลบรารีที่จำเป็น -

import pandas as pd

สร้างดัชนีหลายตัว พารามิเตอร์ชื่อตั้งชื่อสำหรับระดับในดัชนี

multiIndex = pd.MultiIndex.from_arrays([[5, 10], [15, 20], [25, 30], [35, 40]],
   names=['a', 'b', 'c', 'd'])

รับค่าจากค่าเฉพาะ รับ 0 th ค่าระดับ -

print("\nGet level value (0th level)...\n",multiIndex.get_level_values(0))

รับ 1 st ค่าระดับ -

print("\nGet level value (1st level)...\n",multiIndex.get_level_values(1))

ตัวอย่าง

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

import pandas as pd

# Create a multi-index
# The names parameter sets the names for the levels in the index
multiIndex = pd.MultiIndex.from_arrays([[5, 10], [15, 20], [25, 30], [35, 40]],
names=['a', 'b', 'c', 'd'])

print("Multi-index...\n",multiIndex)

# get 0th level value
print("\nGet level value (0th level)...\n",multiIndex.get_level_values(0))

# get 1st level value
print("\nGet level value (1st level)...\n",multiIndex.get_level_values(1))

# dropping a level from the multiindex
print("\nDropping a level...\n",multiIndex.droplevel())

ผลลัพธ์

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

Multi-index...
MultiIndex([( 5, 15, 25, 35),
(10, 20, 30, 40)],
names=['a', 'b', 'c', 'd'])

Get level value (0th level)...
Int64Index([5, 10], dtype='int64', name='a')

Get level value (1st level)...
Int64Index([15, 20], dtype='int64', name='b')

Dropping a level...
MultiIndex([(15, 25, 35),
(20, 30, 40)],
names=['b', 'c', 'd'])