Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用.maketrans()和.unicodedata()从Python 3.x中删除标点符号和特殊字符?_Python_Pandas_Punctuation - Fatal编程技术网

如何使用.maketrans()和.unicodedata()从Python 3.x中删除标点符号和特殊字符?

如何使用.maketrans()和.unicodedata()从Python 3.x中删除标点符号和特殊字符?,python,pandas,punctuation,Python,Pandas,Punctuation,我想使用maketrans()和unicodedata()从csv文件中删除所有标点符号和特殊字符,如下所示。但我不明白结果 我需要的输出是一个数据帧,只是没有标点符号和特殊字符 import pandas as pd from glob import glob 输出为: 全名{33:None,34:None,35:None,36:None,37:N。。。 dtype:object您可以在需要执行此操作的每列上使用str.replace(): df = pd.DataFrame(data={'

我想使用maketrans()和unicodedata()从csv文件中删除所有标点符号和特殊字符,如下所示。但我不明白结果

我需要的输出是一个数据帧,只是没有标点符号和特殊字符

import pandas as pd
from glob import glob
输出为: 全名{33:None,34:None,35:None,36:None,37:N。。。 dtype:object

您可以在需要执行此操作的每列上使用str.replace():

df = pd.DataFrame(data={'Name' : ['He,nry.', 'Jody.', 'F,ran/', 'Adam*']}) 

   Name
0  He,nry.
1  Jody.
2  F,ran/
3  Adam*

df.Name.str.replace("[^a-zA-Z0-9]", "")

Output:

0    Henry
1     Jody
2     Fran
3     Adam
import unicodedata2 as unicode
import stringt
def normalizing_text(text_normalize):

    nfkd_form = unicode.normalize('NFKD', str(text_normalize))
    non_accented_name = "".join([c for c in nfkd_form if not unicode.combining(c)])

    return str.maketrans(dict.fromkeys([*string.punctuation, *string.digits]))

names = names.apply(normalizing_text)
names
df = pd.DataFrame(data={'Name' : ['He,nry.', 'Jody.', 'F,ran/', 'Adam*']}) 

   Name
0  He,nry.
1  Jody.
2  F,ran/
3  Adam*

df.Name.str.replace("[^a-zA-Z0-9]", "")

Output:

0    Henry
1     Jody
2     Fran
3     Adam