【问题标题】:Taking forever to save a pandas dataframe from google colab session to my google drive永远将熊猫数据框从谷歌 colab 会话保存到我的谷歌驱动器
【发布时间】:2019-10-21 10:22:04
【问题描述】:

我将我的谷歌驱动器安装在我的 colab 笔记本中,并且我有一个相当大的熊猫数据框并尝试 mydf.to_feather(path) 路径在我的谷歌驱动器中。预计它有 100 兆大,而且需要很长时间。

这是意料之中的吗?似乎 colab 和 google drive 之间的网络链接不是很好。有人知道服务器是否在同一地区/地区吗?

我可能需要更改我的工作流程以避免这种情况。如果您有任何最佳实践或建议,请告诉我,如果没有使用所有 GCP(我希望没有这种延迟)。

【问题讨论】:

  • 这似乎很零星。我保存了另一个更大的数据框 to_feather(...),这一次它要快得多。
  • 不看你的代码,这是任何人的猜测......
  • 我在做绝对“默认”的事情。如果您已经看到 .to_feather(...) 发生这种情况,您可能不需要查看我的代码即可重现。我在下面发布了一个解决方法,并猜测发生了什么。

标签: pandas google-drive-api google-colaboratory feather


【解决方案1】:

如果您发现从 google colab 调用 df.to_feather("somewhere on your gdrive") 并且它在 ~X00mb 的数量级上,您可能会发现零星的性能。保存文件可能需要几分钟到一小时的时间。我无法解释这种行为。

解决方法:首先保存到 colab 主机的本地目录 /content/。然后将文件从 /content 复制到您的 gdrive 挂载目录。这对我来说似乎更加一致和快速。我只是无法解释为什么 .to_feather 直接对 gdrive 造成如此大的影响。

【讨论】:

  • 我相信这种行为可能是熊猫羽毛格式特有的。它似乎有很多写入开销。保存到 csv 似乎没有任何问题。
  • 我没有足够的证据。但我有一种预感, to_feather(....) 会以某种方式引发大量网络开销。所以先在本地保存,然后再做通常的 cp 可能会避免这些开销。
猜你喜欢
  • 2018-07-19
  • 2021-07-07
  • 2020-07-30
  • 1970-01-01
  • 2021-03-25
  • 2018-10-14
  • 2019-07-12
  • 2021-06-13
  • 1970-01-01
相关资源
最近更新 更多