NLTK:如何从 csv 文件创建语料库

NLTK: How to create a corpus from csv file

我有一个 csv 文件作为

col1         col2      col3

some text    someID    some value
some text    someID    some value

在每一行中,col1 对应于整个文档的文本。我想从这个 csv 创建一个语料库。我的目标是使用 sklearn 的 TfidfVectorizer 来计算文档相似度和关键词提取。所以考虑

tfidf = TfidfVectorizer(tokenizer=tokenize, stop_words='english')
tfs = tfidf.fit_transform(<my corpus here>)

这样我就可以使用

str = 'here is some text from a new document'
response = tfidf.transform([str])
feature_names = tfidf.get_feature_names()
for col in response.nonzero()[1]:
    print feature_names[col], ' - ', response[0, col]

如何使用 nltk 创建语料库? form/data 语料库应该是什么结构才能提供给转换函数?

pandas 图书馆查看 read_csv。这是文档:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html

您可以在命令行中通过运行 pip install pandas 安装pandas。然后加载 csv 并选择该列应该如下所示简单:

data = pd.read_csv(path_to_csv)
docs = data['col1']

tfs = tfidf.fit_transform(docs)