file - 我可以将 hdf5 用于大量文本数据吗?

标签 file data-mining hdf5

假设我要以编程方式从互联网上以文本字符串形式获取十万本开放获取书籍。我的目的是对它们进行一些分析(使用 Pandas )。我已经在我的应用程序的某些部分使用了 mongodb,但我认为将它放在 Pendrive 中并将其转移到另一台机器上并不容易。 Sqlite 是可移植的,但我讨厌编写 sql。我看到的其他选项是将它作为单独的文本文件或称为 hdf5 的东西放在文件系统中。

hdf5 适合这种类型的纯文本数据吗?如果没有,还有哪些其他选择?

最佳答案

是的,你可以,但如果我是你,我只会使用单独的文本文件并压缩包含目录。原因如下:

大型数字数组(HDF5 的面包和黄油)可以以二进制格式有效存储,但没有二进制文本,因此使用 HDF5 在获得的空间方面没有优势。是的,您可以在 HDF5 文件中启用压缩,但您也可以轻松压缩文本文件。

如今,文本文件和 zip 文件都非常普遍,因此在可移植性方面没有任何好处。

下面是一个使用 HDF5 无法完成的微不足道的示例:删除数据集并回收其空间。

最后,这是您项目的另一个依赖项,而文本文件以任何编程语言免费提供。

关于file - 我可以将 hdf5 用于大量文本数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26996127/

相关文章:

string - 将多行 SQL 查询导入到单个字符串

string - 聚类(尤其是字符串聚类)如何工作?

python - 使用 pytables 访问 hdf5 文件中任意组的方法是什么?

java - 如何在 Java 中正确实现 FileChooser

java - 如何使用 JAVA 读取 CSV 文件

python - 读取 csv 文件中的 n 个表以分隔 pandas DataFrame

machine-learning - 训练集和测试集的大小

python - 聚类余弦相似度矩阵

python - 查找 HDF5 表中列中每个唯一值的最后时间戳的有效方法

c# - 如何将自定义类型的列表/数组写入 HDF5 文件?