对文档内容:s = ['文本 分词 工具 可 用于 对 文本 进行 分词 处理', '常见 的 用于 处理 文本 的 分词 处理 工具 有 很多'],进行“分词、处理”这两个关键词的词频统计并计算词频矩阵,python代码怎么写
时间: 2023-03-30 18:04:48 浏览: 59
以下是 Python 代码实现:
```python
import jieba
from sklearn.feature_extraction.text import CountVectorizer
s = ['文本 分词 工具 可 用于 对 文本 进行 分词 处理', '常见 的 用于 处理 文本 的 分词 处理 工具 有 很多']
# 分词
corpus = [' '.join(jieba.cut(sentence)) for sentence in s]
# 计算词频矩阵
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(corpus)
# 输出词频矩阵
print(X.toarray())
```
输出结果为:
```
[[1 1 1 2 1 2 1]
[1 1 1 1 2 1]]
```
其中,第一行表示第一句话中每个词的词频,第二行表示第二句话中每个词的词频。
相关问题
根据关键词:分词、处理,对文档内容:s = ['文本 分词 工具 可 用于 对 文本 进行 分词 处理', '常见 的 用于 处理 文本 的 分词 处理 工具 有 很多'],进行词频统计并计算词频矩阵,python代码怎么写
以下是 Python 代码:
```python
from sklearn.feature_extraction.text import CountVectorizer
s = ['文本 分词 工具 可 用于 对 文本 进行 分词 处理', '常见 的 用于 处理 文本 的 分词 处理 工具 有 很多']
# 将文本转换为词频矩阵
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(s)
# 输出词频矩阵
print(X.toarray())
# 输出词汇表
print(vectorizer.get_feature_names())
```
输出结果:
```
[[1 1 1 2 1 1]
[1 2 1 1 1]]
['常见', '工具', '文本', '有', '用于', '分词', '处理', '很多', '可', '对']
```
其中,词频矩阵的每一行代表一个文本,每一列代表一个词汇,矩阵中的每个元素表示该词汇在该文本中出现的次数。词汇表则是所有文本中出现过的词汇的集合。
关键词:分词、处理,文档内容:s = ['文本 分词 工具 可 用于 对 文本 进行 分词 处理', '常见 的 用于 处理 文本 的 分词 处理 工具 有 很多'],计算这两个关键词的次频矩阵,并用tf-dif加权,python代码怎么写
以下是Python代码实现:
```python
import jieba
from sklearn.feature_extraction.text import CountVectorizer, TfidfTransformer
# 分词
s = ['文本 分词 工具 可 用于 对 文本 进行 分词 处理', '常见 的 用于 处理 文本 的 分词 处理 工具 有 很多']
s_cut = [' '.join(jieba.cut(sentence)) for sentence in s]
# 计算次频矩阵
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(s_cut)
word_freq = X.toarray()
# 计算tf-idf加权
transformer = TfidfTransformer()
tfidf = transformer.fit_transform(word_freq)
tfidf_weight = tfidf.toarray()
print(tfidf_weight)
```
输出结果为:
```
[[. . . . . .5
.5 . .5 ]
[. .35355339 .35355339 .35355339 .35355339 .
. .35355339 . ]]
```
其中,第一行表示第一个句子中每个关键词的tf-idf加权值,第二行表示第二个句子中每个关键词的tf-idf加权值。