【发布时间】:2018-02-13 18:30:38
【问题描述】:
我正在尝试编译一些已下载并存储在本地的股票数据。本地存储的数据在一个文件夹中,并且都包含未损坏的 csv 文件。这是我用来读取包含我保存的所有 csv 文件的文件夹的代码:
df = pd.read_csv('stock_dfs/{}.csv'.format(ticker.replace('.'and'-'and',','')))
当我运行完整的程序时,代码 BRK.B 总是显示为 FileNotFoundError:
FileNotFoundError: File b'stock_dfs/BRK-B.csv' does not exist
这个错误很有趣,因为在我的“stock_dfs”文件夹中,代码被写为 BRK.B,我认为 pandas 阅读器无法识别带有“.”的代码。
试图修复这个错误我添加了下面的代码,因为我认为它可能与“。”有关,但后来它变成了一个“-”,然后变成了一个“,”,当我终于涵盖了所有那些它仍然给出带有'-'的错误消息:(我指的'更改'是在打印错误时'BRK'和'B'之间的标点符号。)
ticker.replace('.'and'-'and',','')))
但我仍然收到 FileNotFoundError:
FileNotFoundError: File b'stock_dfs/BRK-B.csv' does not exist
我查看了其他问题,例如 CSV 文件不存在 - pandas 数据框,但即便如此,当我提供文件夹甚至 BRK.B csv 文件的完整路径时,它也会产生与上述相同的错误。指定文件夹路径的提示没有帮助,我一生都无法弄清楚为什么它不断将标点符号更改为错误中的一个代码,以及找不到明显存在的 csv 文件.
非常感谢任何帮助。
here is an image of the BRK.B file in the folder, as well as opened up in excel
【问题讨论】:
-
这里的
ticker是什么?您的字符串插值不正确:Python 告诉您它正在寻找BRK-B.csv,但您的文件名是BRK.B.csv。请注意,'.'and'-'and','的计算结果为','(试试看)。 -
该字符串是标识 "ticker" 的 for 循环的一部分。 python为什么要找BRK-B.csv?
-
你从哪里得到
ticker的值? -
我保存了一个文件,其中包含我从谷歌金融 api 检索到的所有 500 个标准普尔股票代码。股票代码被定义为从谷歌从我也保存在 csv 文件中的每一个“股票代码”股票代码中检索到的信息。
-
我已经更新了答案
标签: python-3.x csv