主要内容

加入

组合多个单词袋或n-grams袋模型

描述

例子

newBag=加入(组合数组中的元素通过合并频率计数。该函数将第一维不等于1的元素组合在一起。

newBag=加入(昏暗的组合数组中的元素沿着维度昏暗的

例子

全部折叠

从标记化的文档创建两个单词袋模型的数组。

STR = [...一个短句的例子。“第二个短句”];documents = tokenizedDocument(str);bag(1) = bagOfWords(documents(1));bag(2) = bagOfWords(documents(2))
袋=1×2对象带有属性的1x2 bagOfWords数组:计数词汇表NumWords NumDocuments

使用组合词袋模型加入

包=加入(包)
bag = bagOfWords with properties:计数:[2x7 double]词汇:["an" "example" "of" "a" "short"…NumWords: 7 NumDocuments: 2

如果文本数据包含在一个文件夹中的多个文件中,则可以使用并行导入文本数据并创建单词袋模型parfor.如果已安装并行计算工具箱™,则parfor循环以并行方式运行,否则以串行方式运行。使用加入将一组单词袋模型组合成一个模型。

从文件集合创建单词袋模型。十四行诗的例子都有文件名"exampleSonnetN.txt”,N是十四行诗的数字。获取文件及其位置的列表dir

fileLocation = fullfile(matlabroot,“例子”“textanalytics”“数据”“exampleSonnet * . txt”);fileInfo = dir(fileLocation);

初始化一个空的词袋模型,然后遍历文件并创建一个词袋模型数组。

bag = bagOfWords;numFiles = numel(fileInfo);parfori = 1:numFiles f = fileInfo(i);Filename = fullfile(f.folder,f.name);textData = extractFileText(文件名);文档= tokenizedDocument(textData);bag(i) = bagOfWords(文件);结束
使用'Processes'配置文件启动并行池(parpool)…连接到并行池(工人数量:4)。

使用组合词袋模型加入

包=加入(包)
词汇:["来自" "最公平的" "生物" "我们"…NumWords: 276 NumDocuments: 4

输入参数

全部折叠

袋装词或袋装n-grams模型的数组,指定为bagOfWords数组或bagOfNgrams数组中。如果是一个bagOfNgrams数组,则要连接的每个元素必须具有相同的值NgramLengths财产。

连接模型的维度,指定为正整数。如果昏暗的如果未指定,则默认值为大小不等于1的第一个维度。

输出参数

全部折叠

输出模型,返回为bagOfWords对象或bagOfNgrams对象。的类型newBag是同类型的吗newBag具有与输入模型相同的数据类型,并且在连接的维度上的大小为1。

版本历史

在R2018a中引入