主要内容

tokenizedDocument

用于文本分析的标记化文档数组

描述

标记化文档是表示为单词集合的文档(也称为令牌),用于文本分析。

使用令牌化文档:

该函数支持英语、日语、德语金宝app和韩语文本。学会如何使用tokenizedDocument对于其他语言,请参阅语言的注意事项

创建

描述

文档=标记化文档创建无标记的标量标记化文档。

实例

文档= tokenizedDocument (str)标记字符串数组的元素,并返回标记化的文档数组。

实例

文档= tokenizedDocument (str,名称,值)使用一个或多个名称-值对参数指定其他选项。

输入参数

全部展开

输入文本,指定为字符串数组、字符向量、字符向量的单元格数组或字符串数组的单元格数组。

如果输入文本尚未拆分为单词,则str必须是字符串数组、字符向量、字符向量的单元格数组或字符串标量的单元格数组。

例子:["一个短文档的例子";"第二个短文档"]

例子:“单个文档的示例”

例子:{“一个短文档的示例”;“第二个短文档”}

如果输入文本已拆分为单词,则指定“标记化方法”“没有”.如果str包含单个文档,则它必须是单词的字符串向量、字符向量的行单元格数组或包含单词的单个字符串向量的单元格数组。如果str包含多个文档,则它必须是字符串数组的单元格数组。

例子:[“示例”文档]

例子:{'an','example','document'}

例子:{["a " "short" "document"的"an" "example" "}

例子:{(“一个”“例子”“”“”“短”“文档”);[“一”“二”“短”“文档”)}

数据类型:字符串|字符|细胞

名称-值对的观点

指定可选的逗号分隔的字符对名称,值参数。的名字是参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:'DetectPatterns',{'email-address','web-address'}检测电子邮件地址和网址

方法标记文档,指定为逗号分隔对,由“标记化方法”以及下列其中一项:

  • unicode的-使用基于Unicode的规则标记输入文本®标准附件# 29[1]还有重症监护室的标记器[2].如果str是单元格数组,那么其中的元素呢str必须是字符串标量或字符向量。如果“语言”“en”“德”然后unicode的是默认的。

  • “mecab”-使用MeCab标记器标记日语和韩语文本[3].如果“语言”“是的”“柯”然后“mecab”是默认的。

  • mecabOptionsobject–使用指定的MeCab选项标记日文和韩文文本mecabOptions对象。

  • “没有”—不要标记输入文本。

如果输入文本已拆分为单词,则指定“标记化方法”“没有”.如果str包含单个文档,则它必须是单词的字符串向量、字符向量的行单元格数组或包含单词的单个字符串向量的单元格数组。如果str包含多个文档,则它必须是字符串数组的单元格数组。

要检测的复杂标记的模式,指定为由逗号分隔的对组成“DetectPatterns”“没有”,“所有”,或包含下列一个或多个内容的字符串或单元格数组。

  • “电子邮件地址”—检测邮箱地址。例如,治疗“user@domain.com”作为单个令牌。

  • “网址”—检测web地址。例如,治疗“//www.tatmou.com”作为单个令牌。

  • “标签”——检测标签。例如,治疗“# MATLAB”作为单个令牌。

  • 一提到他的——检测at-mentions。例如,治疗“@MathWorks”作为单个令牌。

  • “表情符号”——检测表情符号。例如,治疗“:-D”作为单个令牌。

如果DetectPatterns“没有”,则该函数不会检测任何复杂的令牌模式。如果DetectPatterns“所有”,然后该函数检测所有列出的复杂令牌模式。

例子:“DetectPatterns”、“标签”

例子:'DetectPatterns',{'email-address','web-address'}

数据类型:字符|字符串|细胞

要检测的自定义标记,指定为逗号分隔对,由“CustomTokens”和下面的一个。

  • 包含自定义标记的字符向量的字符串数组、字符向量或单元格数组。

  • 在名为的列中包含自定义标记的表令牌对应的标记类型为列类型

如果将自定义标记指定为字符串数组、字符向量或字符向量的单元格数组,则该函数指定标记类型“自定义”. 要指定自定义令牌类型,请使用表输入。要查看令牌类型,请使用tokenDetails作用

例子:“CustomTokens”,(“c++”“c#”]

数据类型:字符|字符串|表格|细胞

要检测的正则表达式,指定为逗号分隔的对,由“RegularExpressions”和下面的一个。

  • 包含正则表达式的字符串数组、字符向量或字符向量的单元格数组。

  • 包含正则表达式的表,列名为模式以及列中相应的标记类型类型

如果将正则表达式指定为字符串数组、字符向量或字符向量的单元格数组,则函数将指定标记类型“自定义”. 要指定自定义令牌类型,请使用表输入。要查看令牌类型,请使用tokenDetails作用

例子:“RegularExpressions',[“版本:\d+”“修订版:\d+”]

数据类型:字符|字符串|表格|细胞

用于web地址检测的顶级域名,指定为逗号分隔对组成“TopLevelDomains”以及字符向量、字符串数组或字符向量的单元格数组。默认情况下,函数使用topLevelDomains

此选项仅适用于“DetectPatterns”“所有”或者包含“网址”

例子:“TopLevelDomains”,(“com”“净”“org”]

数据类型:字符|字符串|细胞

语言,指定为逗号分隔对,由“语言”和下面的一个。

  • “en”——英语。该选项还设置的默认值“标记化方法”unicode的

  • “是的”——日本。该选项还设置的默认值“标记化方法”“mecab”

  • “德”——德国。该选项还设置的默认值“标记化方法”unicode的

  • “柯”——韩国人。该选项还设置的默认值“标记化方法”“mecab”

如果没有指定值,则该函数使用corpusLanguage作用

此选项指定标记的语言细节。要查看标记的语言细节,请使用tokenDetails这些语言细节决定了removeStopWords,addPartOfSpeechDetails,normalizeWords,addSentenceDetails,addEntityDetails令牌上的函数。

有关“文本分析工具箱™”中语言支持的更多信息,请参见金宝app语言的注意事项

例子:“语言”、“ja”

属性

全部展开

文档中唯一的单词,指定为字符串数组。这些词没有以任何特定的顺序出现。

数据类型:字符串

目标函数

全部展开

erasePunctuation 删除文本和文档中的标点符号
removeStopWords 从文档中删除停止字
removeWords 从文档或词袋模型中删除选定的词
normalizeWords 词干或词根化
用语 单词的正确拼写
replaceWords 替换文档中的单词
replaceNgrams 在文档中替换n-g
删除空文档 从标记化的文档数组、单词包模型或n-gram包模型中删除空文档
较低的 将文档转换为小写
将文档转换为大写
tokenDetails 令牌化文档数组中令牌的详细信息
addSentenceDetails 在文档中添加句子编号
addPartOfSpeechDetails 在文档中添加词性标签
addLanguageDetails 向文档添加语言标识符
addTypeDetails 向文档添加令牌类型细节
Addlemmadetals 向文档中添加标记的引理形式
addEntityDetails 向文档添加实体标记
writeTextDocument 将文档写入文本文件
doclength 文档数组中文档的长度
上下文 在上下文中搜索文档中出现的单词或n-gram
joinWords 通过连接单词将文档转换为字符串
doc2cell 将文档转换为字符串向量的单元格数组
字符串 将标量文档转换为字符串向量
+ 附加文档
取代 替换文档中的子字符串
docfun 将功能应用于文档中的单词
regexprep 使用正则表达式替换文档中的文字
wordcloud 从文本、词袋模型、词袋-n-grams模型或LDA模型创建词云图

例子

全部折叠

从字符串数组创建标记化文档。

str = [一个短句的例子“第二句话”]
str=2 x1字符串"一个短句的例子" "第二个短句"
文件= tokenizedDocument (str)
documents = 2x1 tokenizedDocument: 6个token:一个短句的例子4个token:第二个短句

从字符串创建标记化文档str.默认情况下,该函数处理标签“# MATLAB”的表情符号“:-D”,以及网址“//www.tatmou.com/help”作为单一的令牌。

str=“学习如何在#MATLAB中分析文本!: - d看到//www.tatmou.com/help/”;文档= tokenizedDocument (str)
document = tokenizedDocument: 11 token:学习如何在MATLAB中分析文本!: - d参见//www.tatmou.com/help/

要仅将哈希标记检测为复杂标记,请指定“DetectPatterns”选项是“标签”仅限。然后该函数将表情符号化“:-D”网站地址“//www.tatmou.com/help”为多个令牌。

文档= tokenizedDocument (str,“DetectPatterns”,“标签”)
document = tokenizedDocument: 24 token:学习如何在MATLAB中分析文本!: - D see https: / / www。mathworks。Com / help /

从使用的文档数组中删除停止词removeStopWords.这个tokenizedDocument函数检测文档是英文的,因此removeStopWords删除英语停顿词。

文件= tokenizedDocument ([一个短句的例子“第二句话”]);newDocuments = removeStopWords(文档)
newDocuments = 2x1 tokenizedDocument: 3 tokens:示例短句3 tokens:第二个短句

使用波特词干分析器对文档数组中的单词进行词干处理。

文件= tokenizedDocument ([“措词强烈的词汇集”“另一个词集”]);newDocuments = normalizeWords(文档)
newDocuments=2x1 tokenizedDocument:6个标记:一个由单词组成的strongli单词集合4个标记:另一个单词集合

这个tokenizedDocument函数在默认情况下拆分包含符号的单词和标记。例如,该函数将“c++”和“c#”拆分为多个标记。

str=“我对MATLAB、c++和c#很有经验。”;文件= tokenizedDocument (str)
我精通MATLAB, c++和c#。

属性指定自定义标记,以防止函数分割包含符号的标记“CustomTokens”选择。

文件= tokenizedDocument (str,“CustomTokens”, (“c++”“C#”])
我精通MATLAB, c++和c#。

自定义令牌具有令牌类型“自定义”。查看令牌详细信息。该列类型包含令牌类型。

tdetails = tokenDetails(文档)
tdetails =11×5表令牌DocumentNumber LineNumber类型语言  _____________ ______________ __________ ___________ ________ " 我“1 1字母en”“1 1字母en”经历了“1 1字母en”“1 1字母在“MATLAB“1 1字母”,“1 1标点符号在“c++”1 1自定义”,“1 1标点en”和“1 1字母在“c#“1 1”定制en。”1 1标点符号

要指定您自己的令牌类型,请将自定义令牌作为表输入,其中令牌位于名为的列中令牌,以及名为类型.若要将自定义类型分配给不包含符号的令牌,请在表中也包含该令牌。例如,创建一个表,将“MATLAB”、“c++”和“c#”分配给“编程语言”令牌类型。

T =表;T.Token = [“MATLAB”“c++”“C#”]“;T.类型=[“编程语言”“编程语言”“编程语言”]“
T =3×2表令牌类型  ________ ______________________ " " MATLAB编程语言”“c++”“编程语言”“c#编程语言”

使用自定义令牌表标记文本并查看令牌详细信息。

文件= tokenizedDocument (str,“CustomTokens”T);tdetails = tokenDetails(文档)
tdetails =11×5表1月UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU1编程语言en、1标点符号en和1字母en C#1 1编程语言en“.”1 1标点符号en

这个tokenizedDocument函数在默认情况下拆分包含符号的单词和符号。例如,该函数拆分文本版本:2”为多个令牌。

str=“升级到ver:2 rev:3。”;文件= tokenizedDocument (str)
文档=标记化文档:9个标记:升级到版本2版本3。

要防止函数拆分具有特定模式的令牌,请使用“RegularExpressions”选择。

指定正则表达式来检测表示版本号和修订号的标记:后面出现的数字字符串版本:““修订版:”分别。

文件= tokenizedDocument (str,“RegularExpressions”, (“版本:\ d +”“牧师:\ d +”])
documents = tokenizedDocument: 5 token: upgrade to ver:2 rev:3。

默认情况下,自定义令牌具有令牌类型“自定义”。查看令牌详细信息。该列类型包含令牌类型。

tdetails = tokenDetails(文档)
tdetails =5×5表令牌DocumentNumber LineNumber类型语言  __________ ______________ __________ ___________ ________ " “1 1字母en”升级到“1 1字母在“版本:2“1 1自定义在“牧师:3“1 1”自定义在。”1 1标点符号

要指定自己的令牌类型,请将正则表达式作为表输入,其中的正则表达式位于名为的列中模式和列中的令牌类型类型

T=表;T.模式=[“版本:\ d +”“牧师:\ d +”]“;T.类型=[“版本”“修订”]“
T =2×2表模式类型  _________ __________ " 版本:\ d +”“版本”“牧师:\ d +”“修订”

使用自定义令牌表标记文本并查看令牌详细信息。

文件= tokenizedDocument (str,“RegularExpressions”T);tdetails = tokenDetails(文档)
tdetails =5×5表令牌DocumentNumber LineNumber类型语言  __________ ______________ __________ ___________ ________ " “1 1字母en”升级到“1 1字母在“版本:2“1 1版本en”牧师:3“1 1”修订en。”1 1标点符号

加载示例数据。该文件sonnetsPreprocessed.txt包含莎士比亚十四行诗的预处理版本。该文件每行包含一首十四行诗,单词之间用空格分隔。从中提取文本sonnetsPreprocessed.txt,将文本以换行符分割为文档,然后标记文档。

文件名=“sonnetsPreprocessed.txt”;str = extractFileText(文件名);textData =分裂(str,换行符);文件= tokenizedDocument (textData);

搜索“生命”这个词。

tbl=上下文(文档、,“生命”);负责人(待定)
ans =8×3表上下文文档词  ________________________________________________________ ________ ____ " consumst你自己单身生活啊你徒劳的“9 10”不是假冒行生活生活修复乘以铅笔“16 35 d假冒行生活生活修复次铅笔基金会的“16 36”天知道墓藏生活展示半部分编写“17 14”他眼睛长久的生命给你生命温柔的大使馆爱你生命四两独沉你的美虽有情人生命美将黑线剪掉活第二生命第二头在美之前

查看字符串数组中的引用。

tbl.上下文
ans =23 x1字符串“consumst你自己单身生活啊你徒劳的”“不是假冒行生活生活修复次铅笔”“d假冒行生活生活修复次铅笔基金会”“天知道墓藏生活展示半部分编写b”“他眼睛长给生活你”“温柔的大使馆爱你生活四个二沉”“大美虽然爱好者生命美必黑线”“年代剪掉第二生活第二头之前美”“e排练让爱甚至生命衰变以免智慧世界lo”“圣保释应带走生命所行利益memor”“艺术你失去了渣滓生活猎物蠕虫身体死牛”“思想食品生活sweetseasond淋浴gro”“tten名字因此不朽的生命一旦走了w”“美沉默别人给的生活带来生活fa " ve生活带来墓墓生活生活公平眼睛诗人赞美d”“偷走自己的定期寿险你放心我的李”“菲你是向我的生活不再你的爱留在dep”“害怕坏的错误至少生活有更好的状态是“anst烦恼变化无常的心灵、生活你反抗谎言啊ha" " fame faster time wastes life thou preventst scythe cr" "ess harmful deeds better life provide public means pub" "ate hate away threw savd life saying " " many nymphs vowd chaste life keep came tripping maide"

标记日语文本使用tokenizedDocument.该功能自动检测日语文本。

str = [“恋に悩み,苦しむ。”“恋の悩みで苦しむ。”“空に星が輝き,瞬いている。”“空の星が輝きを増している。”];文件= tokenizedDocument (str)
文档=4x1标记文档:6个标记:恋 に 悩み 、 苦しむ 。 6代币:恋 の 悩み で 苦しむ 。 10个代币:空 に 星 が 輝き 、 瞬い て いる 。 10个代币:空 の 星 が 輝き を 増し て いる 。

使用标记德语文本tokenizedDocument.该功能自动检测德语文本。

str = [“早安。你的名字叫什么?”“这是我的线。”];文件= tokenizedDocument (str)
documents=2x1标记文档:8个标记:Guten Morgen.Wie geht es dir?6个标记:Heute wird ein guter Tag。

更多关于

全部展开

兼容性的考虑

全部展开

R2019b中的行为发生了变化

R2018b中行为改变

R2018b中行为改变

R2018b中行为改变

参考文献

[1]Unicode文本分割https://www.unicode.org/reports/tr29/

[3]MeCab:另一个词性和形态分析器https://taku910.github.io/mecab/

在R2017b中引入