0

我正在使用 dask 数据框模块来读取 csv。

In [3]: from dask import dataframe as dd                                                                               

In [4]: dd.read_csv("/file.csv", sep=",", dtype=str, encoding="utf-8", error_bad_lines=False, collection=True, blocksize=64e6) 

我以前没有问题,但是今天出现了一个奇怪的警告:

   FutureWarning: The default value of auto_mkdir=True has been deprecated and will be changed to auto_mkdir=False by default in a future release.
      FutureWarning,

直到我意识到它破坏了我的单元测试,这才让我担心,因为当从控制台使用它时,它只是一个简单的警告,但是为我的应用程序设置的测试因此而破坏了。

有谁知道这个警告的原因或如何摆脱它?

4

2 回答 2

0

文档自动回复:

  • 问题出现在 fsspec==0.6.3 和 dask==2.12.0 中,将来会被删除。
  • 为防止 pytest 由于警告而失败,pytest.ini请在项目中添加或编辑文件并设置
filterwarnings =
    error
    ignore::UserWarning
  • 如果您希望 dask 完全消除警告,请在函数调用中显式设置它storage_options=dict("auto_mkdir"=True)
于 2020-04-17T03:59:08.003 回答
0

我得到了同样的东西。找不到关于什么可能取代该功能的答案,我决定看看是否甚至需要该功能。果然,从 Pandas 1.3.0 开始,之前激发该功能的警告不再出现。所以

pd.read_csv(import_path, error_bad_lines=False, warn_bad_lines=False, names=cols)

简直变成了

pd.read_csv(import_path, names=cols)

并且工作正常,没有错误或警告。

于 2021-07-06T20:58:06.820 回答