我想在删除所有数字(如189、98001)、特殊字符('、“、(,))和带有数字或特殊字符的字母(e21x16、e267、e4、e88889、entry778、id2、n27、pv3,)之后为文本数据创建一个新列(该列的每一行都是一个描述)。在
所以我写了下面的函数。但是,返回的结果仍然包含数字和特殊字符。基本上,我的目标是只保留英语单词和缩写。有人知道我的功能为什么不起作用吗。在
def standardize_text(df, text_field):
df[text_field] = df[text_field].str.lower()
df[text_field] = df[text_field].str.replace(r'(', '')
df[text_field] = df[text_field].str.replace(r')', '')
df[text_field] = df[text_field].str.replace(r',', '')
df[text_field] = df[text_field].str.replace(r'_', '')
df[text_field] = df[text_field].str.replace(r"'", "")
df[text_field] = df[text_field].str.replace(r"^[a-z]+\[0-9]+$", "")
df[text_field] = df[text_field].str.replace(r"^[0-9]{1,2,3,4,5}$", "")
return df
使用名为“textcleaner”的库。请参见repository和link。 这个article可能对你有帮助。在
或者
^{pr2}$现在打电话给
main_cleaner(<FILE_NAME>)
它将返回所有基本预处理的单词列表。在必须将
replace
函数的inplace
参数设置为true,或者将返回的df赋给df
变量相关问题 更多 >
编程相关推荐