Pandas: как удалить определенные символы из строк


Вы можете использовать следующие методы для удаления определенных символов из строк в столбце в DataFrame pandas:

Способ 1. Удаление определенных символов из строк

 df[' my_column '] = df[' my_column ']. str . replace (' this_string ', '')

Способ 2: удалить все буквы из строк

 df[' my_column '] = df[' my_column ']. str . replace (' \D ', '', regex= True )

Способ 3: удалить все числа из строк

 df[' my_column '] = df[' my_column ']. str . replace (' \d+ ', '', regex= True )

В следующих примерах показано, как использовать каждый метод на практике со следующим DataFrame pandas:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs2', 'Nets44', 'Kings33', 'Cavs90', 'Heat576'],
                   ' points ': [12, 15, 22, 29, 24]})

#view DataFrame
print (df)

      team points
0 Mavs2 12
1 Nets44 15
2 Kings33 22
3 Cavs90 29
4 Heat576 24

Пример 1. Удаление определенных символов из строк

Мы можем использовать следующий синтаксис, чтобы удалить «avs» из каждой строки в столбце команды :

 #remove 'avs' from strings in team column
df[' team '] = df[' team ']. str . replace (' avs ', '')

#view updated DataFrame
print (df)

      team points
0 M2 12
1 Nets44 15
2 Kings33 22
3 C90 29
4 Heat576 24

Обратите внимание, что слово «avs» было удалено из строк, содержащих «Mavs» и «Cavs», в столбце «Команда ».

Пример 2. Удаление всех букв из строк

Мы можем использовать следующий синтаксис, чтобы удалить все буквы из каждой строки в столбце команды :

 #remove letters from strings in team column
df[' team '] = df[' team ']. str . replace (' \D ', '', regex= True )

#view updated DataFrame
print (df)

  team points
0 2 12
1 44 15
2 33 22
3 90 29
4,576 24

Обратите внимание, что все буквы были удалены из каждой строки в столбце команды .

Остаются только числовые значения.

Пример 3. Удаление всех чисел из строк

Мы можем использовать следующий синтаксис, чтобы удалить все числа из каждой строки в столбце команды :

 #remove numbers from strings in team column
df[' team '] = df[' team ']. str . replace (' \d+ ', '', regex= True )

#view updated DataFrame
print (df)

    team points
0 Mavs 12
1 Nets 15
2 Kings 22
3 Cavs 29
4 Heat 24

Обратите внимание, что все числа были удалены из каждой строки в столбце команды .

Остались только буквы.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в pandas:

Как заменить значения NaN нулями в Pandas
Как заменить пустые строки NaN в Pandas
Как заменить значения в столбце по условию в Pandas

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *