此示例演示如何创建一个函数,用于清理和预处理文本数据以进行分析。
文本数据可能很大,并且可能包含大量对统计分析产生负面影响的噪音。例如,文本数据可能包含以下内容:
大小写的变化,例如“新”和“新”
词形变化,例如“walk”和“walking”
增加噪音的词,例如“停止词”,如“the”和“of”
标点符号和特殊字符
HTML和XML标签
这些词云说明了应用于来自天气报告的一些原始文本数据的词频分析,以及相同文本数据的预处理版本。
创建预处理函数可能很有用,这样您就可以以相同的方式准备不同的文本数据集合。例如,在训练模型时,您可以使用一个函数,以便使用与训练数据相同的步骤对新数据进行预处理。
这个函数预处理文本数据
,将执行以下步骤:
使用标记化文档
.
用英语把单词语法化正常化森林
.
使用删除标点符号删除标点符号
.
使用删除停止词列表(如“and”、“of”和“the”)移除单词
.
使用删除包含2个或更少字符的单词除去短文
.
使用删除包含15个或更多字符的单词removeLongWords
.
要使用该功能,只需将文本数据输入预处理文本数据
.
文本数据=[“苹果山外有一棵大树倒下,堵塞了交通。”“停车场的许多汽车挡风玻璃都有很多损坏。”]; 文档=预处理文本数据(文本数据)
documents=2x1 tokenizedDocument:8 tokens:apple hill外大树倒下阻塞交通7 tokens:停车场损坏多辆汽车挡风玻璃停车场
作用文档=预处理文本数据(文本数据)%标记文本。文档=标记化文档(textData);%把这些词用柠檬语法化。要改进柠檬化,首先使用%添加部分SpeechDetails。documents=addPartOfSpeechDetails(documents);documents=normalizeWords(documents,“风格”,“引理”);%删除标点符号。文件=标点符号(文件);%删除停止词列表。文件=删除文字(文件);%删除2个或更少字符的单词,以及15个或更多字符的单词%字符。文件= removeShortWords(文件,2);= removeLongWords文档(文档、15);终止
有关显示更详细工作流的示例,请参见准备文本数据进行分析.
对于文本分析的下一步,您可以尝试创建分类模型或使用主题模型分析数据。有关示例,请参见创建用于分类的简单文本模型和使用主题模型分析文本数据.
标记化文档
|删除标点符号
|移除单词
|除去短文
|removeLongWords
|正常化森林
|addPartOfSpeechDetails