草庐IT

python - 如何使用 `h5py` 调整 HDF5 阵列的大小

如何使用h5pyPython库调整HDF5数组的大小?我已经尝试使用.resize方法并在chunks设置为True的数组上。las,我仍然缺少一些东西。In[1]:importh5pyIn[2]:f=h5py.File('foo.hdf5','w')In[3]:d=f.create_dataset('data',(3,3),dtype='i8',chunks=True)In[4]:d.resize((6,3))/home/mrocklin/Software/anaconda/lib/python2.7/site-packages/h5py/_hl/dataset.pycinresiz

python - 使用不同大小的 h5py 数组保存

我正在尝试使用HDF5数据格式存储大约3000个numpy数组。数组长度从5306到121999不等np.float64我得到对象dtypedtype('O')没有原生HDF5等价物错误,因为由于数据的不规则性质,numpy使用通用对象类。我的想法是将所有数组填充到121999长度并将大小存储在另一个数据集中。但是这在空间上看起来很低效,有没有更好的方法?编辑:澄清一下,我想存储3126个dtype=np.float64数组。我将它们存储在list中,当h5py执行例程时,它会转换为dtype=object的数组,因为它们的长度不同。为了说明这一点:a=np.array([0.1,0.

python - 在 Pandas 中将列附加到 HDF 文件的框架

我正在处理CSV格式的大型数据集。我正在尝试逐列处理数据,然后将数据附加到HDF文件中的帧。所有这些都是使用Pandas完成的。我的动机是,虽然整个数据集比我的物理内存大得多,但列大小是可管理的。在稍后阶段,我将通过将列一一加载回内存并对其进行操作来执行特征逻辑回归。我可以制作一个新的HDF文件并用第一列制作一个新的框架:hdf_file=pandas.HDFStore('train_data.hdf')feature_column=pandas.read_csv('data.csv',usecols=[0])hdf_file.append('features',feature_col

python - 将大型 SAS 数据集转换为 hdf5

我有多个大型(>10GB)SAS数据集,我想将其转换为在pandas中使用,最好在HDF5中使用。有许多不同的数据类型(日期、数字、文本),一些数字字段也有不同的缺失值错误代码(即值可以是.、.E、.C等)我希望保留列名和标签元数据。有没有人找到一种有效的方法来做到这一点?我尝试使用MySQL作为两者之间的桥梁,但在传输时出现了一些超出范围的错误,而且速度非常慢。我还尝试以Stata.dta格式从SAS导出,但SAS(9.3)以与pandas中的read_stat()不兼容的旧Stata格式导出。我还尝试了sas7bdat包,但从描述来看它还没有经过广泛测试,所以我想以另一种方式加载数

python - PyTables 处理大小比内存大很多倍的数据

我试图了解PyTables如何管理大小大于内存大小的数据。这是PyTables(linktoGitHub)代码中的注释:#Nodesreferencedbyavariablearekeptin`_aliveNodes`.#Whentheyarenolongerreferenced,theymovethemselves#to`_deadNodes`,wheretheyarekeptuntiltheyarereferencedagain#ortheyarepreemptedfromitbyotherunreferencednodes.也可以在_getNode中找到有用的评论方法。看起来Py

python - 当字符串列内容比已有内容长时,HDFStore.append(string, DataFrame) 失败

我有一个通过HDFStore存储的PandasDataFrame,它主要存储有关我正在执行的测试运行的摘要行。每行中的几个字段包含可变长度的描述性字符串。当我进行测试运行时,我创建了一个新的DataFrame,其中只有一行:defexport_as_df(self):returnpd.DataFrame(data=[self._to_dict()],index=[datetime.datetime.now()])然后调用HDFStore.append(string,DataFrame)将新行添加到现有的DataFrame。除了其中一个字符串列的内容大于已经存在的最长实例之外,这工作正常

python - 如何以HDF5格式提供caffe多标签数据?

我想将caffe与矢量标签一起使用,而不是整数。我检查了一些答案,HDF5似乎是更好的方法。但后来我遇到了这样的错误:accuracy_layer.cpp:34]Checkfailed:outer_num_*inner_num_==bottom[1]->count()(50vs.200)Numberoflabelsmustmatchnumberofpredictions;e.g.,iflabelaxis==1andpredictionshapeis(N,C,H,W),labelcount(numberoflabels)mustbeN*H*W,withintegervaluesin{0,

python - 将具有混合数据和类别的 pandas DataFrame 存储到 hdf5 中

我想将具有不同列的数据帧存储到一个hdf5文件中(在下面找到数据类型的摘录)。In[1]:mydfOut[1]:endTimeuint32distancefloat16signaturecategoryanchorNamecategorystationListobject在转换某些列(上面摘录中的signature和anchorName)之前,我使用了如下代码来存储它(效果很好):path='tmp4.hdf5'key='journeys'mydf.to_hdf(path,key,mode='w',complevel=9,complib='bzip2')但它不适用于类别,然后我尝试了以

python - 在 Pandas 中查询 HDF5

我将以下数据(18,619,211行)作为pandas数据框对象存储在hdf5文件中:dateid2wid1000101980-03-31104010.0008391000101980-03-31106040.0201401000101980-03-31124900.0261491000101980-03-31130470.0335601000101980-03-31133030.001657其中id是索引,其他是列。日期是np.datetime64。我需要执行这样的查询(代码当然不起作用):db=pd.HDFStore('database.h5')data=db.select('df

python - 在 HDF5 中存储 Pandas 对象和常规 Python 对象

Pandas有一个niceinterface这有助于在HDF5中存储诸如Dataframes和Series之类的东西:random_matrix=np.random.random_integers(0,10,m_size)my_dataframe=pd.DataFrame(random_matrix)store=pd.HDFStore('some_file.h5',complevel=9,complib='bzip2')store['my_dataframe']=my_dataframestore.close()但是如果我尝试在同一个文件中保存一些其他常规Python对象,它会提示:m