问题标签 [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.
python - 根据文本语料库中的出现列出词汇表中的单词,使用 Scikit-Learn CountVectorizer
我已经CountVectorizer
在scikit-learn
. 我想在文本语料库中查看所有术语及其对应的频率,以便选择停用词。例如
是否有任何内置功能?
python - CountVectorizer 不打印词汇表
我已经安装了 python 2.7、numpy 1.9.0、scipy 0.15.1 和 scikit-learn 0.15.2。现在,当我在 python 中执行以下操作时:
实际上它应该打印以下内容:
以上代码来自博客: http ://blog.christianperone.com/?p=1589
你能帮我解释一下为什么会出现这样的错误。由于词汇表没有正确索引,我无法继续理解 TF-IDF 的概念。我是 python 的新手,所以任何帮助将不胜感激。
弧。
python - 如何在 Scikit-Learn 文本 CountVectorizer 或 TfidfVectorizer 中保留标点符号?
我有什么方法可以使用scikit-learn 中的文本CountVectorizer
或参数从我的文本文档中保留标点符号 !、?、" 和 ' ?TfidfVectorizer
regex - Sklearn CountVectorizer 词汇不全
考虑以下示例:
得到的词汇是:
词汇表中缺少一些单词,例如ETH, FirstHourDay_22, Anomaly_True
.
为什么是这样?我怎样才能拥有完整的词汇量?
编辑:错误可能是由于token_pattern
CountVectorizer 中的值
编辑:我建议重新考虑以下变量的问题:
all_docs=['ETH0x0000 0017A4779C04 09002B000005 0 PortA Unknown 755 0 45300 FirstHourDay21 LastHourDay23 duration6911 ThreatScorenan ThreatCategorynan False AnomalyFalse',
'ETH0x0000 0017A4779C04 09002B000005 2 PortC Unknown 774 0 46440 FirstHourDay21 LastHourDay23 duration6911 ThreatScorenan ThreatCategorynan False AnomalyFalse',
'ETH0x0000 0017A4779C0A 09002B000005 0 PortA Unknown 752 0 45120 FirstHourDay21 LastHourDay23 duration6913 ThreatScorenan ThreatCategorynan False AnomalyFalse',
'ICMP 10.6.224.1 71.6.165.200 0 PortA 192 IP-ICMP 1 1 70 FirstHourDay22 LastHourDay22 duration0 ThreatScore122,127 ThreatCategory21,23 True AnomalyTrue',
'ICMP 10.6.224.1 71.6.165.200 2 PortC 192 IP-ICMP 1 1 70 FirstHourDay22 LastHourDay22 duration0 ThreatScore122,127 ThreatCategory21,23 True AnomalyTrue',
'ICMP 10.6.224.1 185.93.185.239 0 PortA 192 IP-ICMP 1 1 70 FirstHourDay22 LastHourDay22 duration0 ThreatScore127 ThreatCategory23 True AnomalyTrue']
python - Sklearn:'str'对象没有属性'read'
我想使用 Sklearn 在一个大的 csv 文件中对我的数据进行矢量化,我使用了以下代码:
第一次尝试:
但我得到了这个错误:
AttributeError:“str”对象没有属性“read”
第二次尝试,但仍然出现错误:
第三次尝试:这个确实有效,但由于内存不足而被杀死。
如何在 Sklearn 中使用 fit_transform 处理大型 CSV 文件?
python - Pyspark - 对多个稀疏向量求和(CountVectorizer 输出)
我有一个数据集,其中包含约 30k 个唯一文档,这些文档被标记,因为它们中有特定的关键字。数据集中的一些关键字段是文档标题、文件大小、关键字和摘录(关键字周围 50 个单词)。这些约 30k 独特文档中的每一个都有多个关键字,并且每个文档在数据集中每个关键字都有一行(因此,每个文档都有多行)。以下是原始数据集中关键字段的示例:
我的目标是建立一个模型来为某些事件(孩子抱怨作业等)标记文档,因此我需要对关键字和摘录字段进行矢量化,然后将它们压缩,以便每个唯一文档都有一行。
仅使用关键字作为我正在尝试做的示例 - 我应用了 Tokenizer、StopWordsRemover 和 CountVectorizer,然后它们将输出一个带有计数矢量化结果的稀疏矩阵。一个稀疏向量可能看起来像: sparseVector(158, {7: 1.0, 65: 1.0, 78: 2.0, 110: 1.0, 155: 3.0})
我想做两件事之一:
- 将稀疏向量转换为密集向量,然后我可以按 docID 分组并对每一列求和(一列 = 一个标记)
- 直接对稀疏向量求和(按 docID 分组)
为了让您了解我的意思 - 下图左侧是 CountVectorizer 输出的所需密集向量表示,左侧是我想要的最终数据集。
scikit-learn - CountVectorizer 的 sklearn 部分拟合
是否CountVectorizer
支持部分拟合?
我想训练CountVectorizer
使用不同批次的数据。
python - 添加停用词后,CountVectorizer 在 fit_transform 上引发错误
我有两段代码。一种有效,一种无效。
以下代码按预期运行,没有错误:(注意:postrain
、、、和是前面定义的字符串列表。)negtrain
postest
negtest
但是,此代码会引发错误:
错误:
添加停用词是如何导致错误的?
python - np.nan 是 CountVectorizer 中的无效文档、预期字节或 unicode 字符串
我正在尝试为每个非数字属性创建依赖列,并从 UCI 中消除成人数据集中的那些非数字属性。我正在使用 sklearn.feature_extraction.text 库中的 CountVectorizer。但是我卡在我的程序说的地方,np.nan 是一个无效的文档,预期的字节或 unicode 字符串。”
我只是想了解为什么会出现该错误。谁能帮帮我,谢谢。
这是我的代码,
错误是这样的
回溯(最后一次调用):文件“/home/amey/prog/pd.py”,第 41 行,在 X_dtm = pd.DataFrame(vect.fit_transform(temp).toarray(), columns = vect.get_feature_names() )
文件“/usr/lib/python2.7/dist-packages/sklearn/feature_extraction/text.py”,第 817 行,在 fit_transform self.fixed_vocabulary_ 中)
_count_vocab 中的文件“/usr/lib/python2.7/dist-packages/sklearn/feature_extraction/text.py”,第 752 行,用于分析(doc)中的功能:
文件“/usr/lib/python2.7/dist-packages/sklearn/feature_extraction/text.py”,第 238 行,在 tokenize(preprocess(self.decode(doc))), stop_words)
解码中的文件“/usr/lib/python2.7/dist-packages/sklearn/feature_extraction/text.py”,第 118 行
ValueError:np.nan 是无效的文档、预期的字节或 unicode 字符串。
[在 3.3 秒内完成,退出代码为 1]
python-3.x - 在 scikitlearn 中为 tfidfTransformer 添加功能
我尝试添加功能以对文档进行分类。但我的问题是,如果我的矩阵大小与样本数量不对应,如何添加特征。这是我的估算器
但在我的结果中,我没有打印所有内容......
我不明白 (323, 3000) 和 (163, 3000) 是什么意思???
通常我有 486 个文件(文件)。如果我想在我的变换方法中添加一些特征,我只需要将第一个管道 tdfIdfVectorizer 给出的数组(我理解为 (486, 3000) )连接到我的具有这种形状的新特征数组(486,我的特征)。目前,我无法个性化我的转换方法,因为此时我的行维度不兼容。提前感谢您的帮助。