带有scikit-learn的.arff文件



我想使用带有scikit-learn的属性关系文件格式来执行一些NLP任务,这可能吗?如何将.arff文件与scikit-learn一起使用?

我真的推荐liac-arff。它不会直接加载到 numpy,但转换很简单:

import arff, numpy as np
dataset = arff.load(open('mydataset.arff', 'rb'))
data = np.array(dataset['data'])

我发现 scipy 有一个用于 arff 文件的加载器,可以将它们加载为 numpy 记录数组。我不是100%确定这些数组是否适合scikit-learn直接使用,但这应该可以让您开始。

遵循雷纳托普的回答:假设您的数据是鸢尾花数据集,应该有 5 维,最后一个是类标签列。

s = svm.SVC()
data_input = data[:,0:4]
labels = data[:,4] # this is the class column
s.fit(data_input, labels)

我认为这是你想要的。

具有scipy.arff的解决方案

法典:


from scipy.io import arff
import pandas as pd
data = arff.loadarff('file.arff')
df = pd.DataFrame(data[0])
df.head()

如果您的"arff"文件是文本文件,请尝试以下代码:

import arff, numpy as np
dataset = arff.loads(open('mydataset.arff', 'rt'))
data = np.array(dataset['data'])

最新更新