python实现英文csv文本TF-IDF提取关键词
时间: 2023-05-30 22:08:01 浏览: 140
以下是python实现英文csv文本TF-IDF提取关键词的示例代码:
```python
import pandas as pd
from sklearn.feature_extraction.text import TfidfVectorizer
# 读取csv文件
df = pd.read_csv('text.csv')
# 获取文本列
text = df['text']
# 定义TF-IDF向量化器
tfidf_vectorizer = TfidfVectorizer(stop_words='english')
# 对文本进行向量化
tfidf = tfidf_vectorizer.fit_transform(text)
# 获取特征名
feature_names = tfidf_vectorizer.get_feature_names()
# 创建空列表存储关键词
keywords = []
# 遍历每个文本向量
for i in range(len(text)):
# 获取该文本向量中TF-IDF值最大的特征
max_tfidf_idx = tfidf[i].argmax()
# 将该特征名加入关键词列表
keywords.append(feature_names[max_tfidf_idx])
# 将关键词列表加入到原始DataFrame
df['keywords'] = keywords
# 输出结果
print(df)
```
在此代码中,首先通过pandas库读取英文文本的csv文件并获取文本列。然后使用sklearn库中的TfidfVectorizer类定义了一个TF-IDF向量化器,并对文本进行向量化。接着使用get_feature_names()方法获取特征名,遍历每个文本向量获取其中TF-IDF值最大的特征,并将该特征名加入关键词列表。最后将关键词列表加入到原始DataFrame中,并输出结果。
阅读全文