从CSV加载分类数据到Scikit-Learn进行机器学习

我正在学习使用Scikit-Learn对推文进行分类。我有一个CSV文件,其中一列是推文,下一列是它们的分类,从0到11。我查看了Scikit-Learn网站上的这个教程,我认为我理解了实际分类的过程,但我不确定我是否真正理解了数据格式。在教程中,材料存放在文件夹中,文件夹名称作为分类标签使用。

在我的情况下,我需要从CSV文件中加载数据,并且显然我需要手动构建提供给向量化器和分类器的数据结构。我应该如何处理这个问题?我认为教程在这方面有点模糊,因为数据加载是自动完成的,这让我对自定义数据的结构和加载方式感到困惑。


回答:

通常情况下,你会使用pandas.read_csv,或者如果你不想依赖pandas,可以使用numpy.load,甚至可以使用标准库将CSV加载到列表中。代码看起来像这样:

import pandas as pd
from sklearn.feature_extraction.text import TfidfVectorizer
df = pd.read_csv('example.csv', header=None, sep=',', 
                 names=['tweets', 'class'])   # 如果没有表头,指定列名
vect = TfidfVectorizer()
X = vect.fit_transform(df['tweets'])
y = df['class']

一旦你有了Xy,你就可以将它们输入到分类器中。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注