我在一个文件夹中有52个CSV文件。我想基于这些数据构建一个模型。这就是我想要做的原因让一个人对这些数据进行交叉验证。如何在python中使用sci-kit学习呢?
我尝试了sci kit文件并搜索了很多资源。但我没有找到解决方案。我试过这段代码。
import glob
import numpy as np
import pandas as pd
from sklearn.cross_validation import LeaveOneOut
path=r'...................\Data\New design process data'
filelist=glob.glob(path + "/*.csv")
loo=LeaveOneOut()
for train,test in loo.split(filelist):
print("%s %s" % (train, test))
但它显示错误。
init ()缺少1个必需的位置参数:'n'
我是python的新手以及sci-kit学习。如果有人可以帮助我,那将是一个很大的便利。
答案 0 :(得分:0)
您应该使用较新版本的模块,该模块位于sklearn.model_selection
而不是sklearn.cross_validation
。 (cross_validation
模块在0.18中被删除。)使用此版本,您可以在没有位置参数的情况下实例化类,并且当您尝试调用split时它也不会失败。
from sklearn.model_selection import LeaveOneOut
X = np.array([[1, 2], [3, 4]])
y = np.array([1, 2])
loo = LeaveOneOut() # works without passing an argument
loo.get_n_splits(X) # returns 2