【问题标题】:np.load to a paths filenp.load 到路径文件
【发布时间】:2016-07-01 21:20:41
【问题描述】:

我有一个文件,其中包含每个 .npy 文件的所有路径名。我有大约 500 万个文件,所以我想避免不必要的 fors。

我需要做的是将它们全部加载到我的数据变量中,如下所示:

data = np.load(input_file_w_pathnames)

我知道这行不通,但我想知道是否有人知道一种聪明的方法来做类似的事情,或者至少是一种有效的方法。

【问题讨论】:

  • 如果所有文件都在同一个 dic 中,您可以打开所有 .csv 文件并将它们存储到 data

标签: python numpy path load


【解决方案1】:

np.load 采用文件名或文件对象(您打开的文件)。它使用标准的 Python 文件读取工具。它不需要多个名称或文件。

np.stack([np.load(f) for f in ['x.npy','x.npy','x.npy']])

可以将每个文件中的数组合并成一个更大的数组,它仍然是一个文件一个文件的加载。

请记住,numpy '效率' 是通过在编译后的代码中执行任务来实现的——它更快是因为编译,而不是因为它绕过了任务的串行性质。而且这个任务出现的频率不足以保证特殊的代码。

我假设您可以轻松处理将文件名加载到列表中。

【讨论】:

  • 感谢您的提示。这似乎是最好的解决方法。
猜你喜欢
  • 1970-01-01
  • 2014-12-21
  • 2011-10-02
  • 2015-08-25
  • 1970-01-01
  • 1970-01-01
  • 2018-09-29
  • 2014-11-21
  • 2022-01-02
相关资源
最近更新 更多