π ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΡΡΠΎΠΊΠΈ Π² Pandas: ΠΏΡΠΎΡΡΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΈ ΡΠΎΠ²Π΅ΡΡ
index
. ΠΡΠΈΠ²Π΅Π΄Ρ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π°:
import pandas as pd
# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ DataFrame Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°
data = {'Name': ['John', 'Jane', 'Alex', 'Sarah'],
'Age': [25, 30, 28, 35],
'City': ['New York', 'London', 'Paris', 'Sydney']}
df = pd.DataFrame(data)
# ΠΠ°ΠΉΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΡΡΠΎΠΊΠΈ, Π³Π΄Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΡΡΠΎΠ»Π±ΡΠ΅ 'Name' ΡΠ°Π²Π½ΠΎ 'Alex'
index = df[df['Name'] == 'Alex'].index[0]
print(index)
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΡΡΠΎΠΊΠΈ Π² pandas
Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ pandas Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ°Ρ ΠΌΡ ΡΠ°ΡΡΠΎ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π΅ΠΌΡΡ Ρ Π·Π°Π΄Π°ΡΠ΅ΠΉ ΠΏΠΎΠΈΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΡΡΠΎΠΊΠΈ. ΠΠ½Π΄Π΅ΠΊΡ ΡΡΡΠΎΠΊΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΏΡΠΈ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ.
ΠΠ΅ΡΠΎΠ΄ `index`
ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² Π½Π°ΠΉΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΡΡΠΎΠΊΠΈ Π² pandas - ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ `index`. ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅.
import pandas as pd
# Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ
data = {'ΠΠΌΡ': ['ΠΠ½Π½Π°', 'ΠΠ²Π°Π½', 'ΠΠ°ΡΠΈΡ', 'ΠΠ»Π΅ΠΊΡΠ΅ΠΉ'],
'ΠΠΎΠ·ΡΠ°ΡΡ': [25, 30, 28, 35],
'ΠΠΎΡΠΎΠ΄': ['ΠΠΎΡΠΊΠ²Π°', 'Π‘Π°Π½ΠΊΡ-ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³', 'ΠΠ°Π·Π°Π½Ρ', 'ΠΠΊΠ°ΡΠ΅ΡΠΈΠ½Π±ΡΡΠ³']}
df = pd.DataFrame(data)
# ΠΠ°Ρ
ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΡΡΠΎΠΊΠΈ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
index = df[df['ΠΠΌΡ'] == 'ΠΠ²Π°Π½'].index[0]
print(index)
Π Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠ°Π±Π»ΠΈΡΡ `df` Ρ Π΄Π°Π½Π½ΡΠΌΠΈ, Π° Π·Π°ΡΠ΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅ "ΠΠΌΡ" Π½Π°Ρ ΠΎΠ΄ΠΈΠΌ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΡΡΠΎΠΊΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅ΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ "ΠΠ²Π°Π½". Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ Π½Π° ΡΠΊΡΠ°Π½. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ `[0]`, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ΅ΡΠΎΠ΄ `index` Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΈ ΠΌΡ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅ΠΌ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ.
ΠΠ΅ΡΠΎΠ΄ `get_loc`
ΠΡΡΠ³ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π½Π°ΠΉΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΡΡΠΎΠΊΠΈ - ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ `get_loc`. ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΡΡΠΎΠΊΠΈ, Π΅ΡΠ»ΠΈ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ.
import pandas as pd
# Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ
data = {'ΠΠΌΡ': ['ΠΠ½Π½Π°', 'ΠΠ²Π°Π½', 'ΠΠ°ΡΠΈΡ', 'ΠΠ»Π΅ΠΊΡΠ΅ΠΉ'],
'ΠΠΎΠ·ΡΠ°ΡΡ': [25, 30, 28, 35],
'ΠΠΎΡΠΎΠ΄': ['ΠΠΎΡΠΊΠ²Π°', 'Π‘Π°Π½ΠΊΡ-ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³', 'ΠΠ°Π·Π°Π½Ρ', 'ΠΠΊΠ°ΡΠ΅ΡΠΈΠ½Π±ΡΡΠ³']}
df = pd.DataFrame(data)
df.set_index('ΠΠΌΡ', inplace=True) # Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ "ΠΠΌΡ" Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
# ΠΠ°Ρ
ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΡΡΠΎΠΊΠΈ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
index = df.index.get_loc('ΠΠ°ΡΠΈΡ')
print(index)
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡ "ΠΠΌΡ" Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° `set_index`. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ `get_loc`, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΡΡΠΎΠΊΠΈ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ "ΠΠ°ΡΠΈΡ". Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ Π½Π° ΡΠΊΡΠ°Π½.
ΠΠ΅ΡΠΎΠ΄ `loc`
Π’ΡΠ΅ΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± Π½Π°ΠΉΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΡΡΠΎΠΊΠΈ - ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ `loc`. ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΡΡΠΎΠΊΠ°ΠΌ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈΠ»ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π°Π΄ Π½ΠΈΠΌΠΈ.
import pandas as pd
# Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ
data = {'ΠΠΌΡ': ['ΠΠ½Π½Π°', 'ΠΠ²Π°Π½', 'ΠΠ°ΡΠΈΡ', 'ΠΠ»Π΅ΠΊΡΠ΅ΠΉ'],
'ΠΠΎΠ·ΡΠ°ΡΡ': [25, 30, 28, 35],
'ΠΠΎΡΠΎΠ΄': ['ΠΠΎΡΠΊΠ²Π°', 'Π‘Π°Π½ΠΊΡ-ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³', 'ΠΠ°Π·Π°Π½Ρ', 'ΠΠΊΠ°ΡΠ΅ΡΠΈΠ½Π±ΡΡΠ³']}
df = pd.DataFrame(data)
df.set_index('ΠΠΌΡ', inplace=True) # Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ "ΠΠΌΡ" Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
# ΠΠ°Ρ
ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΡΡΠΎΠΊΠΈ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
index = df.loc[df['ΠΠΎΠ·ΡΠ°ΡΡ'] == 30].index[0]
print(index)
ΠΠ΄Π΅ΡΡ ΠΌΡ ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡ "ΠΠΌΡ" Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, Π° Π·Π°ΡΠ΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° `loc` ΡΠΈΠ»ΡΡΡΡΠ΅ΠΌ ΡΡΡΠΎΠΊΠΈ ΠΏΠΎ ΡΡΠ»ΠΎΠ²ΠΈΡ ("ΠΠΎΠ·ΡΠ°ΡΡ" ΡΠ°Π²Π΅Π½ 30). ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡΠ΅ΠΉ ΡΡΠ»ΠΎΠ²ΠΈΡ.
ΠΡΠ²ΠΎΠ΄
ΠΡ Π½Π°ΡΡΠΈΠ»ΠΈΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΡΡΠΎΠΊΠΈ Π² pandas Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² `index`, `get_loc` ΠΈ `loc`. ΠΠ½Π°Π½ΠΈΠ΅ ΡΡΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ°Ρ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎΠΈΡΠΊΠ° ΠΈ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ.
Π£ΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ pandas!