-1

2 つの csv ファイルを読み取るこのコードを実行しています (そのうちの 1 つは train.csv)。このコードは、「ファイルが存在しません」というエラーを出します。ただし、ファイルは .py ファイルと同じ場所に存在します。誰かがこれについて私を助けてくれますか。ありがとう!

Reading dataset...
Traceback (most recent call last):
  File "c:\Project_1\regression_2.py", line 163, in <module>
    main(**args)
  File "c:\Project_1\regression_2.py", line 80, in main
    train_data = pd.read_csv(train)
  File "c:\Python27\lib\site-packages\pandas\io\parsers.py", line 401, in parser_f
    return _read(filepath_or_buffer, kwds)
  File "c:\Python27\lib\site-packages\pandas\io\parsers.py", line 209, in _read
    parser = TextFileReader(filepath_or_buffer, **kwds)
  File "c:\Python27\lib\site-packages\pandas\io\parsers.py", line 509, in __init__
    self._make_engine(self.engine)
  File "c:\Python27\lib\site-packages\pandas\io\parsers.py", line 611, in _make_engine
    self._engine = CParserWrapper(self.f, **self.options)
  File "c:\Python27\lib\site-packages\pandas\io\parsers.py", line 893, in __init__
    self._reader = _parser.TextReader(src, **kwds)
  File "parser.pyx", line 312, in pandas._parser.TextReader.__cinit__
 (pandas\src\parser.c:2846)
  File "parser.pyx", line 512, in pandas._parser.TextReader._setup_parser_source
 (pandas\src\parser.c:4893)
IOError: File train.csv does not exist

変数は -> として参照されています

def main(train='train.csv', test='test.csv', submit='logistic_pred.csv'):    
    print "Reading dataset..."
    train_data = pd.read_csv(train)
    test_data = pd.read_csv(test)
4

1 に答える 1

8

相対パスを開いていますが、作業ディレクトリはあなたが思っているものではありません。

代わりに絶対パスを使用してください。

train = os.path.join('c:/Documents and Settings', train)

絶対パスを指定しないと、Python は現在の作業ディレクトリを使用します。そのディレクトリが何であるかは、スクリプトをどのように実行したかによって異なり、依存すべきものではありません。

于 2013-07-01T10:57:56.470 に答える