π ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ Π² pandas ΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΈΡ ?
ΠΠ»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² Π² Pandas ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ duplicated().
ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π°:
import pandas as pd
# Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° DataFrame Ρ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠ°ΠΌΠΈ
df = pd.DataFrame({'col1': [1, 2, 3, 3, 4, 5],
'col2': ['a', 'b', 'c', 'c', 'd', 'e']})
# ΠΠΎΠΈΡΠΊ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ²
duplicates = df[df.duplicated()]
# ΠΡΠ²ΠΎΠ΄ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΡ
Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ²
print(duplicates)
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ Π² pandas
ΠΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ Π·Π°Π΄Π°ΡΠ°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π½Π°Π»ΠΈΡΠΈΠ΅ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² Π² DataFrame Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ pandas. ΠΡΠ±Π»ΠΈΠΊΠ°ΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π½Π΅Π²Π΅ΡΠ½ΡΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½ΡΡ , ΠΏΠΎΡΡΠΎΠΌΡ Π²Π°ΠΆΠ½ΠΎ ΡΠΌΠ΅ΡΡ ΠΈΡ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ.
ΠΠΌΠΏΠΎΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ pandas
ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ Ρ DataFrame ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π½Π°Π΄ Π΄Π°Π½Π½ΡΠΌΠΈ Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° pandas. ΠΠ»Ρ Π½Π°ΡΠ°Π»Π°, ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ Π΅Π΅ Π² Π½Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
import pandas as pd
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ DataFrame
ΠΠ»Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠ°ΠΌΠΈ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΏΡΠΎΡΡΠΎΠΉ DataFrame Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ:
data = {'Name': ['John', 'Jane', 'John', 'David'],
'Age': [25, 30, 25, 35],
'City': ['New York', 'Paris', 'New York', 'London']}
df = pd.DataFrame(data)
ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π°Π»ΠΈΡΠΈΡ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ²
Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π½Π°Π»ΠΈΡΠΈΠ΅ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² Π² DataFrame, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ duplicated()
.
ΠΠ½ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΡΡ ΡΠ΅ΡΠΈΡ, Π³Π΄Π΅ True
ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠΎ, ΡΡΠΎ ΡΡΡΠΎΠΊΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠΌ,
Π° False
- ΡΡΠΎ ΡΡΡΠΎΠΊΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ:
duplicates = df.duplicated()
print(duplicates)
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ:
0 False
1 False
2 True
3 False
dtype: bool
ΠΠΎΠ΄ΡΡΠ΅Ρ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ²
Π§ΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² Π² DataFrame, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ sum()
ΠΏΠΎΡΠ»Π΅ ΠΌΠ΅ΡΠΎΠ΄Π° duplicated()
:
total_duplicates = df.duplicated().sum()
print(f"Total duplicates: {total_duplicates}")
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ΠΎ ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ²:
Total duplicates: 1
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ²
ΠΠ»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² ΠΈΠ· DataFrame ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ drop_duplicates()
.
ΠΠ½ ΡΠ΄Π°Π»ΡΠ΅Ρ Π²ΡΠ΅ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π½ΠΎΠ²ΡΠΉ DataFrame:
df_unique = df.drop_duplicates()
print(df_unique)
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ DataFrame, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΡΠ΅ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ Π±ΡΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½Ρ:
Name Age City
0 John 25 New York
1 Jane 30 Paris
3 David 35 London
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΠΎΠ»Π±ΡΠ°Ρ
ΠΡΠ»ΠΈ ΠΌΡ Ρ
ΠΎΡΠΈΠΌ ΡΠ΄Π°Π»ΠΈΡΡ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ
ΡΡΠΎΠ»Π±ΡΠ°Ρ
, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ
ΡΠΏΠΈΡΠΎΠΊ ΡΡΠΈΡ
ΡΡΠΎΠ»Π±ΡΠΎΠ² Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ subset
ΠΌΠ΅ΡΠΎΠ΄Π° drop_duplicates()
:
df_unique_subset = df.drop_duplicates(subset=['Name', 'City'])
print(df_unique_subset)
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ DataFrame, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ ΡΡΠ΅Π΄ΠΈ ΡΡΠΎΠ»Π±ΡΠΎΠ² "Name" ΠΈ "City" Π±ΡΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½Ρ:
Name Age City
0 John 25 New York
1 Jane 30 Paris
3 David 35 London
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ, ΠΊΠ°ΠΊ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π½Π°Π»ΠΈΡΠΈΠ΅ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² Π² DataFrame Ρ ΠΏΠΎΠΌΠΎΡΡΡ
Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ pandas. ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ duplicated()
Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈ
drop_duplicates()
Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ². Π£ΠΌΠ΅Π½ΠΈΠ΅ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ
ΡΠ²Π»ΡΠ΅ΡΡΡ Π²Π°ΠΆΠ½ΡΠΌ Π½Π°Π²ΡΠΊΠΎΠΌ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ, ΠΈ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ
Π² Π°Π½Π°Π»ΠΈΠ·Π΅ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π΄Π°Π½Π½ΡΡ
.