私は、モデルを訓練するために大量のテキストを使用するスクリプトを用意しています。私は、ファイルから読み取るかPythonは複数のファイルを明示的にforループなしで処理します
parser.add_argument('-i', help='input_file', default=sys.stdin)
... # do a bunch of other stuff
if args.i is sys.stdin:
m.train(args.i)
else:
m.train(open(args.i, 'r'))
を標準入力するか、それが今で書かれている方法は、私のように私のスクリプトを呼び出すことができます。
python myscript.py -i trainingdata.txt
または
cat trainingdata.txt | python myscript.py
番目のバージョンは、特に便利です私がファイルシステムを検索し、複数のファイルを使ってモデルを訓練したいのであれば。私は同時に私は-i
オプションを使用して複数のファイルを送ることができることを知っている
cProfiler
すなわち
python -m cProfile myscript.py ...
使用してプロファイリングしてみてください、そしてファイルを反復が、その後、私は意志ただしこれは、パイプに、トリッキーになりデータを上書きしないようにするには、
train()
メソッドの動作を変更する必要があります。
明示的に読んだり書いたりせずに入力を連結する、より良い表現の欠如のために、IOチャネルを開く良い方法はありますか?ファイル名から
あなたがパンダに見たいと思うかもしれませんように私は感じます。 – mauve
@mauve私はすでにこのプロジェクトでパンダと仕事をしていますが、具体的には何を指していますか? – posdef
私はそれが "行単位で読み込まない"部分に役立つと思った。私はディレクトリ内の各ファイルを開き、DataFramesに読み込み、DataFramesを連結し、時間でソートし、CSV形式で10時間チャンクとして出力するコードをいくつか持っています。 – mauve