问题标签 [countvectorizer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2656 浏览

python-3.x - 使用 CountVectorizer 的 fit_transform 错误

所以我有一个X看起来像这样的数据框:

接着,

但我得到这个错误:

不知道为什么。

0 投票
1 回答
1599 浏览

apache-spark - 使用 Spark CountVectorizer 时如何“标准化”向量值?

CountVectorizer并且CountVectorizerModel经常创建一个看起来像这样的稀疏特征向量:

这基本上说词汇表的总大小为 10,当前文档有 5 个唯一元素,在特征向量中,这 5 个唯一元素的位置分别为 0、1、4、6 和 8。此外,其中一个元素显示两次,因此是 2.0 值。

现在,我想“规范化”上述特征向量,让它看起来像这样,

即,每个值除以 6,即所有元素加在一起的总数。例如,0.3333 = 2.0/6

那么有没有办法在这里有效地做到这一点?

谢谢!

0 投票
0 回答
2651 浏览

python - scikit-learn TfidfVectorizer 中的高效词形还原?

我做了一个慢速函数return_lema(tokens),它将标记列表转换为 lemas 列表。

  1. 当我把它放在这个例子 中的build_tokenizer(self)函数中时,它需要 37 秒。TfidfVectorizer

  2. 但是,然后我首先用 获取词汇表CountVectorizer,将词频矩阵中的标记输入到我的return_lema(tokens),然后执行TfidfTransformer,这需要 13 秒。

第二种方式更快,因为return_lema(tokens)不会得到重复的令牌。但是,现在我不能做正确的min_dfmax_dfCountVectorizer.

有没有办法让我的return_lema(tokens)某个地方进入TfidfVectorizer流程,这样在执行之前不需要一个一个文档,而是最终的特征词汇min_dfmax_df

0 投票
1 回答
671 浏览

python - CountVectorizer 在短词上引发错误

有人会尝试向我解释为什么当我尝试 fit_transform 任何短词时 CountVectorizer 会引发此错误吗?即使我使用 stopwords=None 我仍然会得到同样的错误。这是代码

并按预期工作。然后,如果我尝试使用另一个文本进行 fit_transform

并且引发的错误是

我读了一些关于这个错误的主题,因为它似乎真的经常出现错误 CV 引发,但我发现的只是涵盖文本真正只包含停用词的情况。我真的无法弄清楚我的问题是什么,所以如果我得到任何帮助,我将不胜感激!

0 投票
1 回答
3095 浏览

transform - 如果我只是“vectorizer.transform(phrase)”而不拟合它会发生什么?

在将短语向量化并将它们放入矩阵形式时,有些事情让我感到困惑。

当您导入 CountVectorizer 或 TfidfVectorizer 时,

.fit & .transform & .fit_transform 函数有什么区别?

我知道'.fit'会学习ngrams,分成ngrams。

'.transform' 会将其放入短语 x ngram 矩阵中。

'.fit_transform' 作为 .fit 和 .transform 的组合使用

如果是这种情况,如果我只是 vectorize.transform(phrase) 而没有拟合它会发生什么?

我看到本教程设置了适合和转换火车数据,但对于测试数据,它只对预测进行“转换”操作。

提前谢谢大家。

0 投票
0 回答
169 浏览

python - 在 Sckit-learn 的 CountVectorizer() 中重命名特征

我有一个非常大的熊猫数据框。下面是示例

对于进一步的过程,我将使用 Sckit-learn 的 countvectorizer 构造上述数据的 doument-term 矩阵

我必须更正描述中拼写错误的功能。对于大型数据集,用正确拼写的单词替换拼写错误的单词需要花费大量时间。

所以我想到了使用代码给出的计数矢量化器中的特征列表来纠正特征

是否可以使用上述列表重命名特征并进一步将其用于分类过程???

0 投票
1 回答
614 浏览

python - 如何让 scikit 从预先标记的文档中计算文档术语矩阵?

我必须使用可以加载到list字符串中的预标记文档。我想使用 scikit 的CountVectorizer为它们计算文档术语矩阵。这可能吗?

或者我应该自己手动构建/计算一个docterm矩阵?

我想为此使用 scikit 的原因是,以上内容需要集成到使用 scikits CountVectorizer 和BinomialNB训练的程序中。

0 投票
3 回答
10575 浏览

python - raise ValueError("np.nan 是一个无效的文档,预期的字节或"

我在 scikit-learn 中使用 CountVectorizer 对特征序列进行矢量化。当它给出如下错误时,我被卡住了:ValueError:np.nan 是一个无效的文档,预期的字节或 unicode 字符串。

我正在使用包含两列内容和情感的示例 csv 数据集。我的代码如下:

我得到的错误是:

0 投票
2 回答
3288 浏览

python - CountVectorizer 将单词转换为小写

在我的分类模型中,我需要维护大写字母,但是当我使用 sklearn countVectorizer 构建词汇表时,大写字母转换为小写!

为了排除隐式分词,我构建了一个分词器,它只传递文本而不进行任何操作..

我的代码:

输出:

0 投票
2 回答
426 浏览

java - Java 正则表达式在 ascii 范围之外不匹配,行为不同于 python 正则表达式

我想像 sklearn 的CountVectorizer一样从文档中过滤字符串。它使用以下正则表达式:(?u)\b\w\w+\b. 此 java 代码的行为方式应相同:

但这不会产生所需的输出,就像在 python 中那样:

它改为输出:

我可以做些什么来包含非 ascii 字符,就像 python RegEx 一样?