📜  pandas 从列中删除字符 - Python (1)

📅  最后修改于: 2023-12-03 15:33:24.134000             🧑  作者: Mango

Pandas 从列中删除字符 - Python

在 Pandas 中,有时候我们需要将 DataFrame 中某些列中的字符删除或替换。在本文中,我们将介绍如何使用 Pandas 中的函数来删除列中的字符。

1. 使用 str.replace() 函数

我们可以使用 Pandas 中的 str.replace() 函数来替换某个列中的字符。这个函数的用法是:

df['column'] = df['column'].str.replace('old_string', 'new_string')

其中,df 是我们的 DataFrame,column 是要被替换字符的列,old_string 是要被替换的字符串,new_string 是新的字符串。

例如,我们有一个 DataFrame:

import pandas as pd

data = {'fruit': ['apple', 'banana', 'orange'],
        'color': ['red', 'yellow', 'orange']}
df = pd.DataFrame(data)
print(df)

输出为:

     fruit   color
0    apple     red
1   banana  yellow
2   orange  orange

我们想要将 fruit 列中的 e 字符删除,我们可以使用下面的代码:

df['fruit'] = df['fruit'].str.replace('e', '')
print(df)

输出为:

    fruit   color
0    appl     red
1   banan  yellow
2   orang  orange
2. 使用 str.strip() 函数

我们也可以使用 Pandas 中的 str.strip() 函数来删除某个列中的字符。这个函数的用法是:

df['column'] = df['column'].str.strip('some_characters')

其中,df 是我们的 DataFrame,column 是要被删除字符的列,some_characters 是要被删除的字符集合。该函数将会删除该列中包含在字符集合中任何一个字符的所有前导(leading)和尾随(trailing)字符。

例如,我们有一个 DataFrame:

data = {'name': ['  Alice ', 'Bob', '    Carol  '],
        'age': [20, 25, 30]}
df = pd.DataFrame(data)
print(df)

输出为:

       name  age
0    Alice   20
1       Bob  25
2    Carol   30

我们想要删除 name 列中的空格,可以使用下面的代码:

df['name'] = df['name'].str.strip()
print(df)

输出为:

    name  age
0  Alice   20
1    Bob  25
2  Carol  30
总结

在本文中,我们介绍了如何使用 Pandas 中的 str.replace()str.strip() 函数来删除 DataFrame 中列中的字符。这两个函数都非常实用,可以帮助我们处理许多数据清洗的任务。