更多Python学习内容:ipengtao.com
文本数据在机器学习和自然语言处理任务中扮演着重要角色,但原始文本数据通常需要经过预处理才能用于模型训练和分析。本文将介绍Python中常用的文本预处理技术,包括数据清洗、分词、词性标注、停用词去除、词向量表示等,通过丰富的示例代码帮助大家理解和应用这些技术。
数据清洗
1. 清除特殊字符
在文本预处理中,首先需要清除文本中的特殊字符,例如标点符号、数字等。
示例代码如下:
import re
text = "Hello, world! 123"
cleaned_text = re.sub(r'[^a-zA-Z\s]', '', text)
print(cleaned_text) # 输出 "Hello world"
这段代码使用正则表达式去除了文本中的数字和标点符号,保留了字母和空格。
2. 大小写转换
为了统一文本数据的格式,通常需要将文本中的字母转换为统一的大小写。
示例代码如下:
text = "Hello World"
lowercased_text = text.lower()
print(lowercased_text) # 输出 "hello world"
这段代码将文本中的字母转换为小写形式。
分词和词性标注
1. 分词
分词是将文本拆分为单词或词组的过程,常用的分词工具包括NLTK和spaCy。
示例代码如下:
import nltk
text = "Natural language processing is fun"
tokens = nltk.word_tokenize(text)
print(tokens) # 输出 ['Natural', 'language', 'processing', 'is', 'fun']