π ΠΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ Π² pandas
# ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° reindex
df = df.reindex([2, 0, 1])
# ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° iloc
df = df.iloc[[2, 0, 1]]
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ Π² Pandas
ΠΠ°ΠΊΠ΅Ρ Pandas Π² Python ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠΎΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΡΡΡΠΎΠΊ Π² DataFrame. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ Π² Pandas ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠΌ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ .
1. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° sort_values
ΠΠ΅ΡΠΎΠ΄ sort_values Π² Pandas ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ DataFrame ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ ΡΡΠΎΠ»Π±ΡΡ ΠΈΠ»ΠΈ Π½Π°Π±ΠΎΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ². ΠΠ»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΡΡΡΠΎΠΊ Π² DataFrame ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ.
ΠΡΠΈΠΌΠ΅Ρ:
import pandas as pd
# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ DataFrame
df = pd.DataFrame({'ΠΠΌΡ': ['ΠΠ»Π΅ΠΊΡΠ΅ΠΉ', 'ΠΠΎΡΠΈΡ', 'ΠΠΈΠΊΡΠΎΡ'],
'ΠΠΎΠ·ΡΠ°ΡΡ': [25, 30, 35],
'ΠΠ°ΡΠΏΠ»Π°ΡΠ°': [50000, 70000, 60000]})
# Π‘ΠΎΡΡΠΈΡΡΠ΅ΠΌ DataFrame ΠΏΠΎ ΡΡΠΎΠ»Π±ΡΡ "ΠΠΎΠ·ΡΠ°ΡΡ" Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΡΠ±ΡΠ²Π°Π½ΠΈΡ
df = df.sort_values('ΠΠΎΠ·ΡΠ°ΡΡ', ascending=False)
# ΠΡΠ²ΠΎΠ΄ΠΈΠΌ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ DataFrame
print(df)
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ DataFrame Ρ ΡΡΠ΅ΠΌΡ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ: "ΠΠΌΡ", "ΠΠΎΠ·ΡΠ°ΡΡ" ΠΈ "ΠΠ°ΡΠΏΠ»Π°ΡΠ°". ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ sort_values, ΡΡΠΎΠ±Ρ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ DataFrame ΠΏΠΎ ΡΡΠΎΠ»Π±ΡΡ "ΠΠΎΠ·ΡΠ°ΡΡ" Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΡΠ±ΡΠ²Π°Π½ΠΈΡ. Π, Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΠΌΡ Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ DataFrame.
2. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° reindex
ΠΠ΅ΡΠΎΠ΄ reindex ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΌΠ΅Π½ΡΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ Π² DataFrame Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ Ρ Π½ΠΎΠ²ΡΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ Π² DataFrame.
ΠΡΠΈΠΌΠ΅Ρ:
import pandas as pd
# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ DataFrame
df = pd.DataFrame({'ΠΠΌΡ': ['ΠΠ»Π΅ΠΊΡΠ΅ΠΉ', 'ΠΠΎΡΠΈΡ', 'ΠΠΈΠΊΡΠΎΡ'],
'ΠΠΎΠ·ΡΠ°ΡΡ': [25, 30, 35],
'ΠΠ°ΡΠΏΠ»Π°ΡΠ°': [50000, 70000, 60000]})
# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΡΡΡΠΎΠΊ
new_index = [2, 0, 1]
# ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ reindex Ρ Π½ΠΎΠ²ΡΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ
df = df.reindex(new_index)
# ΠΡΠ²ΠΎΠ΄ΠΈΠΌ DataFrame Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠΎΠΌ ΡΡΡΠΎΠΊ
print(df)
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ DataFrame Ρ ΡΡΠ΅ΠΌΡ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΉ Π½ΠΎΠ²ΡΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ. Π, Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ reindex, ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ Π² DataFrame Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
3. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° loc
ΠΠ΅ΡΠΎΠ΄ loc ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΡΡΡΠΎΠΊΠΈ ΠΈ ΡΡΠΎΠ»Π±ΡΡ Π² DataFrame Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΈΡ ΠΌΠ΅ΡΠΎΠΊ. ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ Ρ Π½ΠΎΠ²ΡΠΌ ΡΠΏΠΈΡΠΊΠΎΠΌ ΠΌΠ΅ΡΠΎΠΊ ΡΡΡΠΎΠΊ, ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ Π² DataFrame.
ΠΡΠΈΠΌΠ΅Ρ:
import pandas as pd
# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ DataFrame
df = pd.DataFrame({'ΠΠΌΡ': ['ΠΠ»Π΅ΠΊΡΠ΅ΠΉ', 'ΠΠΎΡΠΈΡ', 'ΠΠΈΠΊΡΠΎΡ'],
'ΠΠΎΠ·ΡΠ°ΡΡ': [25, 30, 35],
'ΠΠ°ΡΠΏΠ»Π°ΡΠ°': [50000, 70000, 60000]})
# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΌΠ΅ΡΠΎΠΊ ΡΡΡΠΎΠΊ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΡΡΡΠΎΠΊ
new_labels = ['ΠΠΈΠΊΡΠΎΡ', 'ΠΠ»Π΅ΠΊΡΠ΅ΠΉ', 'ΠΠΎΡΠΈΡ']
# ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ loc Ρ Π½ΠΎΠ²ΡΠΌ ΡΠΏΠΈΡΠΊΠΎΠΌ ΠΌΠ΅ΡΠΎΠΊ ΡΡΡΠΎΠΊ
df = df.loc[new_labels]
# ΠΡΠ²ΠΎΠ΄ΠΈΠΌ DataFrame Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠΎΠΌ ΡΡΡΠΎΠΊ
print(df)
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ DataFrame Ρ ΡΡΠ΅ΠΌΡ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΌΠ΅ΡΠΎΠΊ ΡΡΡΠΎΠΊ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΉ Π½ΠΎΠ²ΡΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ. Π, Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ loc, ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ Π² DataFrame Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° ΠΌΠ΅ΡΠΎΠΊ ΡΡΡΠΎΠΊ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΡΡΠΈ ΡΠΏΠΎΡΠΎΠ±Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΡΡΡΠΎΠΊ Π² Pandas: ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° sort_values, ΠΌΠ΅ΡΠΎΠ΄Π° reindex ΠΈ ΠΌΠ΅ΡΠΎΠ΄Π° loc. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΡΡΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ°Π·Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΡΡΡΠΎΠΊ Π² DataFrame. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ.