Python:从数据帧中删除unicode

问题描述 投票:0回答:1

我将使用一个简单的数据框作为示例:

data = {'A': ['bbbb\u3000', 'aaaa\uf505'], 'B': ['1', '2']}
df = pd.DataFrame(data)
print(df)


       A   B
0  bbbb  1
1  aaaa   2

我想删除A列中的每个unicode,但是,其中还有其他我可能不知道的unicode。

当我尝试拆分 '\' 时它也不起作用

df=df[~df['A'].str.contains(r'\\')]

我的预期结果:

      A   B
0  bbbb  1
1  aaaa   2
python pandas unicode
1个回答
0
投票

您可以使用正则表达式从 DataFrame 的 A 列中删除所有 unicode 字符。具体方法如下:

import pandas as pd
import re

data = {'A': ['bbbb\u3000', 'aaaa\uf505'], 'B': ['1', '2']}
df = pd.DataFrame(data)

# Function to remove unicode characters from a string
def remove_unicode(text):
    return re.sub(r'[^\x00-\x7F]+', '', text)

# Apply the function to column A
df['A'] = df['A'].apply(remove_unicode)

print(df)

输出:

      A  B
0  bbbb  1
1  aaaa  2

此代码将从 A 列中删除所有 unicode 字符,同时保留其他字符不变。

© www.soinside.com 2019 - 2024. All rights reserved.