2016-05-20 7 views
0

私が持っているデータセットは、お互いを知っているサンプルでグループ分けされています。つまり、同様の条件で同様の条件で作成されました。 列車試験データセットの残高は重要であるため、列車または試験に乗る必要がありますが、分離することはできません。だから私のscikit-learnコードで使うのは簡単ではありません。私はいくつかのファイルのテストにひだを作り、「本物」を作りたい場合に非常に便利な快適とないではありませんファイルで区切られたデータセットの相互検証

train ~> cat ./dataset/!(1.txt) 
test ~> cat ./dataset/1.txt 

:今、私のようなものを作るルーに似たものを使用しています

履歴書。 実際のオーバーフィットをチェックするには、どのように良いCVを作ることが可能でしょうか?

答えて

0

this answerを見ると、私はパンダがデータフレームを連結できることに気付きました。私はプロセスがcatコマンドラインより15-20%遅いことを確認しましたが、私が期待していたようにフォールドを行うことができます。

import glob 
import numpy as np 
import pandas as pd 
from sklearn.cross_validation import KFold 

allFiles = glob.glob("./dataset/*.txt") 
kf = KFold(len(allFiles), n_folds=3, shuffle=True) 

for train_files, cv_files in kf: 
    dataTrain = pd.concat((pd.read_csv(allFiles[idTrain], header=None) for idTrain in train_files)) 
    dataTest = pd.concat((pd.read_csv(allFiles[idTest], header=None) for idTest in cv_files)) 

とにかく、私はこの1つ以外の良い方法があるはずということはかなり確信しています

関連する問題