【问题标题】:Pandas read CSV Error: some linux/win conflict?Pandas 读取 CSV 错误:一些 linux/win 冲突?
【发布时间】:2017-12-21 20:40:02
【问题描述】:

我使用 jupyter 笔记本 我正在尝试从网络读取 CSV

   data= pd.read_csv('\cdtvnas13\scor\ML Projects\Data\Input\', sep='\t', 
           encoding='utf-16_le')

结果是:

   File "<ipython-input-8-5f26daf531ba>", line 2
       crosswalk = pd.read_csv('\cdtvnas13\ACOEAnalytics\ML 
   Projects\Data\Input\', sep='\t', encoding='utf-16_le')
               ^
   IndentationError: expected an indented block

我查看并尝试了很多技巧,但都没有成功......

谢谢你的建议

【问题讨论】:

  • 这是一个缩进错误。您必须注意代码的格式,不要混合制表符和空格
  • 1) 您的链接转到文件夹而不是文件 2) 路径末尾的 \' 被解释为转义撇号,这意味着您的字符串未正确关闭。看看 SO 的格式化方式。
  • 你的错误可能只是 linux/win 相关的
  • @ason​​gtoruin 谢谢。是的,它是一个文件夹,数据在这个文件夹中。你能解释一下我如何看待 SO 的格式化方式吗...
  • @ArpitSolanki 谢谢!

标签: python csv pandas jupyter-notebook


【解决方案1】:

将路径更改为:

data= pd.read_csv('/cdtvnas13/scor/ML Projects/Data/Input/', sep='\t', encoding='utf-16_le')

因为它在某些字符上转义,特别是最后一个单引号 \' 被评估为 ' 这不是所需的行为,还要检查您的缩进并将所有内容放在一行上,除非您需要行中断命令,在这种情况下添加换行符(参见this

data= pd.read_csv('/cdtvnas13/scor/ML Projects/Data/Input/', \ # <- this adds a line break continuation character
 sep='\t', encoding='utf-16_le')

另外,read_csv 期望实际文件的完整路径/url,您不能只提供文件夹路径,因此您应该执行类似

的操作
data= pd.read_csv('/cdtvnas13/scor/ML Projects/Data/Input/mycsv.csv', sep='\t', encoding='utf-16_le')

【讨论】:

  • 我解决了它不是编码问题。事实上,我无法访问云共享文件夹。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-10-07
  • 2022-11-03
  • 1970-01-01
  • 2013-08-12
  • 2023-02-20
  • 1970-01-01
相关资源
最近更新 更多