turicreate Windows(wsl ubuntu)无法打开csv文件进行读取

时间:2020-11-06 05:29:09

标签: python jupyter-notebook turi-create

我在Windows上安装了wsl Ubuntu 20.04 LTS发行版,以使用turicreate。但是在使用csv文件时出现问题,我将其从下载文件夹移至venv文件夹所在的/ home / user。在第一行,我!pip安装turicreate并运行要求已经满足,然后导入了turicreate并运行

sf = turicreate.SFrame(r'people-example.csv')

的输出为

OSError                                   Traceback (most recent call last)
~/MLvenv/lib/python3.8/site-packages/turicreate/data_structures/sframe.py in _read_csv_impl(cls, url, delimiter, header, error_bad_lines, comment_char, escape_char, double_quote, quote_char, skip_initial_space, column_type_hints, na_values, line_terminator, usecols, nrows, skiprows, verbose, store_errors, nrows_to_infer, true_values, false_values, _only_raw_string_substitutions, **kwargs)
   1093             with cython_context():
-> 1094                 errors = proxy.load_from_csvs(internal_url, parsing_config, type_hints)
   1095         except Exception as e:

cy_sframe.pyx in turicreate._cython.cy_sframe.UnitySFrameProxy.load_from_csvs()

cy_sframe.pyx in turicreate._cython.cy_sframe.UnitySFrameProxy.load_from_csvs()

OSError: Cannot open /home/anagene/people-example.csv for read. Cannot open /home/anagene/people-example.csv for reading

During handling of the above exception, another exception occurred:

OSError                                   Traceback (most recent call last)
~/MLvenv/lib/python3.8/site-packages/turicreate/data_structures/sframe.py in __init__(self, data, format, _proxy)
    825                     url = data
--> 826                     tmpsf = SFrame.read_csv(url, delimiter=",", header=True)
    827                     self.__proxy__ = tmpsf.__proxy__

~/MLvenv/lib/python3.8/site-packages/turicreate/data_structures/sframe.py in read_csv(cls, url, delimiter, header, error_bad_lines, comment_char, escape_char, double_quote, quote_char, skip_initial_space, column_type_hints, na_values, line_terminator, usecols, nrows, skiprows, verbose, nrows_to_infer, true_values, false_values, _only_raw_string_substitutions, **kwargs)
   1555 
-> 1556         return cls._read_csv_impl(
   1557             url,

~/MLvenv/lib/python3.8/site-packages/turicreate/data_structures/sframe.py in _read_csv_impl(cls, url, delimiter, header, error_bad_lines, comment_char, escape_char, double_quote, quote_char, skip_initial_space, column_type_hints, na_values, line_terminator, usecols, nrows, skiprows, verbose, store_errors, nrows_to_infer, true_values, false_values, _only_raw_string_substitutions, **kwargs)
    985                 # Get the first nrows_to_infer rows (using all the desired arguments).
--> 986                 first_rows = SFrame.read_csv(
    987                     url,

~/MLvenv/lib/python3.8/site-packages/turicreate/data_structures/sframe.py in read_csv(cls, url, delimiter, header, error_bad_lines, comment_char, escape_char, double_quote, quote_char, skip_initial_space, column_type_hints, na_values, line_terminator, usecols, nrows, skiprows, verbose, nrows_to_infer, true_values, false_values, _only_raw_string_substitutions, **kwargs)
   1555 
-> 1556         return cls._read_csv_impl(
   1557             url,

~/MLvenv/lib/python3.8/site-packages/turicreate/data_structures/sframe.py in _read_csv_impl(cls, url, delimiter, header, error_bad_lines, comment_char, escape_char, double_quote, quote_char, skip_initial_space, column_type_hints, na_values, line_terminator, usecols, nrows, skiprows, verbose, store_errors, nrows_to_infer, true_values, false_values, _only_raw_string_substitutions, **kwargs)
   1093             with cython_context():
-> 1094                 errors = proxy.load_from_csvs(internal_url, parsing_config, type_hints)
   1095         except Exception as e:

~/MLvenv/lib/python3.8/site-packages/turicreate/_cython/context.py in __exit__(self, exc_type, exc_value, traceback)
     49                 # To hide cython trace, we re-raise from here
---> 50                 raise exc_type(exc_value)
     51             else:

OSError: Cannot open /home/anagene/people-example.csv for read. Cannot open /home/anagene/people-example.csv for reading

During handling of the above exception, another exception occurred:

OSError                                   Traceback (most recent call last)
<ipython-input-8-d54163f18f67> in <module>
----> 1 sf = turicreate.SFrame(r'people-example.csv')

~/MLvenv/lib/python3.8/site-packages/turicreate/data_structures/sframe.py in __init__(self, data, format, _proxy)
    836                     pass
    837                 else:
--> 838                     raise ValueError("Unknown input type: " + format)
    839 
    840     @staticmethod

~/MLvenv/lib/python3.8/site-packages/turicreate/_cython/context.py in __exit__(self, exc_type, exc_value, traceback)
     48             if not self.show_cython_trace:
     49                 # To hide cython trace, we re-raise from here
---> 50                 raise exc_type(exc_value)
     51             else:
     52                 # To show the full trace, we do nothing and let exception propagate

OSError: Cannot open /home/anagene/people-example.csv for read. Cannot open /home/anagene/people-example.csv for reading

1 个答案:

答案 0 :(得分:0)

出现了完全相同的问题,通过在ubuntu上执行以下代码来使所有人都可以访问文件来解决该问题: sudo chmod a + rwx /home/anagene/people-example.csv,其中后半部分是文件路径。

将文件名a / c更改为您的查询,以便您可以直接使用上面的代码。