πŸ”§ Как ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² строкС pandas: ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ совСты ΠΈ руководство

Для измСнСния значСния Π² строкС pandas Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ at ΠΈΠ»ΠΈ iat. ΠœΠ΅Ρ‚ΠΎΠ΄ at ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для доступа ΠΈ измСнСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ ΠΌΠ΅Ρ‚ΠΊΠ΅ индСкса ΠΈ ΠΈΠΌΠ΅Π½ΠΈ столбца. ΠœΠ΅Ρ‚ΠΎΠ΄ iat ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для доступа ΠΊ значСниям ΠΏΠΎ цСлочислСнной ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ индСкса ΠΈ числовому индСксу столбца. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π°:

import pandas as pd

# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})

# Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ at для измСнСния значСния ΠΏΠΎ ΠΌΠ΅Ρ‚ΠΊΠ΅ индСкса ΠΈ ΠΈΠΌΠ΅Π½ΠΈ столбца
df.at[0, 'A'] = 10
print(df)

# Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ iat для измСнСния значСния ΠΏΠΎ цСлочислСнной ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ индСкса ΠΈ числовому индСксу столбца
df.iat[1, 1] = 20
print(df)
    

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² строкС pandas

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ pandas, ΠΈΠ½ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ строкС. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ способы измСнСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² строках pandas.

1. ИзмСнСниС значСния ΠΏΠΎ индСксу столбца

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² строкС ΠΏΠΎ индСксу столбца, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ at. НапримСр, Ρƒ нас Π΅ΡΡ‚ΡŒ DataFrame с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΈ возрастами студСнтов:


import pandas as pd

data = {'Name': ['Alice', 'Bob', 'Charlie'],
        'Age': [20, 25, 30]}

df = pd.DataFrame(data)

df.at[1, 'Age'] = 26

print(df)

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ измСняСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ возраста студСнта с индСксом 1, ΠΈ устанавливаСм Π΅Π³ΠΎ Ρ€Π°Π²Π½Ρ‹ΠΌ 26.

2. ИзмСнСниС значСния ΠΏΠΎ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ

ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² строкС, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‰Π΅ΠΉ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ. Для этого ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ loc. НапримСр, Π΄Π°Π²Π°ΠΉΡ‚Π΅ помСняСм возраст студСнта ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ:


df.loc[df['Name'] == 'Bob', 'Age'] = 27

print(df)

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ измСняСм возраст студСнта с ΠΈΠΌΠ΅Π½Π΅ΠΌ "Bob" Π½Π° 27.

3. ИспользованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° replace

Π‘ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΌ ΠΈ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌ способом измСнСния значСния Π² строкС являСтся использованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° replace. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ позволяСт Π½Π°ΠΌ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²ΠΎ всСм DataFrame ΠΈΠ»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ столбцС. НапримСр:


df.replace('Alice', 'Alicia', inplace=True)

print(df)

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ замСняСм всС значСния 'Alice' Π½Π° 'Alicia' Π² DataFrame.

4. ИзмСнСниС значСния Π² строкС Ρ‡Π΅Ρ€Π΅Π· ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ ΠΏΠΎ индСксам

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² строкС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ соотвСтствуСт ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ индСксу ΠΈΠ»ΠΈ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ ΠΏΠΎ индСксам ΠΈ столбцам. НапримСр:


for index, row in df.iterrows():
    if row['Name'] == 'Charlie':
        df.at[index, 'Age'] = 31

print(df)

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ строку с ΠΈΠΌΠ΅Π½Π΅ΠΌ "Charlie" ΠΈ измСняСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ возраста Π½Π° 31.

5. ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ столбца

Если Ρƒ нас Π΅ΡΡ‚ΡŒ слоТная Π»ΠΎΠ³ΠΈΠΊΠ° для измСнСния значСния Π² строкС, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ apply. НапримСр, Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠΌ возраст ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ студСнта Π½Π° 1:


df['Age'] = df['Age'].apply(lambda x: x + 1)

print(df)

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ примСняСм лямбда-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ значСния возраста ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ студСнта Π½Π° 1.

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ способы измСнСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² строках pandas. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ подходящий способ Π² зависимости ΠΎΡ‚ вашСй ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° pandas ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΈ рСкомСндуСтся ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π΅Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ для Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Pandas Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ β„–4. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ со столбцами DataFrame

Python ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ. ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π΅Π½Π½Π°Ρ Π·Π°ΠΌΠ΅Π½Π° тСкста с Pandas

Pandas Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ β„–3. ΠžΡ‚Π±ΠΎΡ€ строк ΠΈ столбцов, Π Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ, Π˜ΠΌΠΏΠΎΡ€Ρ‚ CSV

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

πŸ”§ Как ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² строкС pandas: ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ совСты ΠΈ руководство