【发布时间】:2017-05-31 05:06:46
【问题描述】:
当我使用 pandas 打开一些 HDF5 文件时,它会显示一条消息:
以只读模式打开/path/to/file/file_name.h5
如何隐藏此消息?请注意,我并不总是明白。当我尝试在下面制作一个测试示例时,我可以在没有任何消息的情况下阅读它:
pd.DataFrame({'a':[1,2,3]}).to_hdf('test.h5', 'key', mode='w')
_ = pd.read_hdf('test.h5')
我不知道文件的大小是否重要?我实际使用的那个比上面创建的测试文件大很多。
编辑: 我创建了一个大的测试文件,阅读时仍然没有收到消息:
# don't run this if you don't want a 1G dummy file
pd.DataFrame({ch: np.arange(10000000) for ch in 'abcdefghijklm'}).to_hdf('test.h5', 'k1')
_ = pd.read_hdf('test.h5', 'k1')
我自己没有创建给我消息的文件,所以我不确定在调用pandas.DataFrame.to_hdf() 时是否可以设置某些标志,这可能会导致在读取文件时始终出现此消息?
【问题讨论】:
-
邮件由
../pandas/io/pytables.py打印。似乎 pytables 已经提出了一个IOError并且 pandas 只是打印了这个消息。有人向 pandas (detail issue) 提出了问题。阻止它打印的唯一方法是在打开文件期间设置一个模式。否则你需要想办法阻止它输出消息到stdout。 -
@SSC 如果您想添加它作为答案,我会继续接受它。传入
mode='r'对我的目的来说已经足够了。