我对此感到非常困惑,我有两个脚本运行在同一个笔记本服务器上。我在同一个文件夹中有一个HDFStore,但是对于一个脚本,它看起来是空的,而另一个则没有。
import os
os.getcwd()返回NB 1:‘e:\DoingDataScience\标识\脚本’
返回NB 2:‘e:\DoingDataScience\标识\脚本’
store = pd.HDFStore('data_test.h5')
store.items返回NB 1:
<bound method HDFStore.items of <class 'pandas.io.pytables.HDFStore'>
File path: data_test.h5
/test_database frame (shape->[3,5])>返回NB 2:
<bound method HDFStore.items of <class 'pandas.io.pytables.HDFStore'>
File path: data_test.h5
Empty>所有的情况都是一样的。它跟踪潘达斯DF的来源吗?我想可能是因为NB 1已经打开了这个文件,因为NB 1创建了它。然而,杀死NB 1和重新启动NB 2也没有任何作用。
编辑:添加os.stats:
NB 1和NB 2均:
nt.stat_result(st_mode=33206, st_ino=0L, st_dev=0L, st_nlink=0,
st_uid=0, st_gid=0, st_size=1311400L, st_atime=1465072325L,
st_mtime=1465149771L, st_ctime=1465072325L)更新:现在,在重新启动之后,我得到了一个新错误:
HDF5ExtError: HDF5错误返回跟踪
文件"C:\aroot\work\hdf5-1.8.15-patch1\src\H5F.c",第604行,在无法打开文件文件的"C:\aroot\work\hdf5-1.8.15-patch1\src\H5Fint.c",第1085行中,在H5F_open中无法读取超级块文件"C:\aroot\work\hdf5-1.8.15-patch1\src\H5Fsuper.c",第294行,在无法加载超级块文件"C:\aroot\work\hdf5-1.8.15-patch1\src\H5AC.c",第1320行的H5F_super_read中,H5AC_protect H5C_protect()失败。文件“C:\aroot\work\hdf5 5-1.8.15-patch1 1\src\H5C.c”,第3574行,在H5C_protect中无法加载条目文件"C:\aroot\work\hdf5-1.8.15-patch1\src\H5C.c",第7954行,无法加载输入文件的H5C_load_entry第476行,在H5F_sblock_load截断文件中:H5C_load_entry= 800,sblock->base_addr = 0,stored_eoa = 1181448
HDF5错误返回跟踪的结束
无法打开/创建文件“data_test.h5”
发布于 2016-06-05 18:31:22
很可能你已经写了你的数据
/test_database frame (shape->[3,5])>在nb1的会话中,并且没有关闭store (这会将您的更改保存并刷新到文件/磁盘)。
因此,当您在h5中打开NB2文件时,它还没有刷新,因此是空的。
https://stackoverflow.com/questions/37645112
复制相似问题