坚持使用简单的pandas数据帧循环

时间:2018-02-09 13:13:51

标签: python python-3.x pandas for-loop dataframe

我有一个hdf5文件,里面有28个数据集。每个数据集具有不同的维度。例如,第一个数据集是[60,8],最后一个是[60,1]。

我想遍历HDF5文件,读取每个数据集中的所有数据并将其写入pandas数据帧。最后我应该有一个大小为[60,218]的数据帧。到目前为止,我已经尝试了以下代码。但我的代码挂了。

有人可以在我的代码中发现错误并告诉我更好的方法吗?

q=h5py.File('AM_B0_D3.7_2016-04-13T215000.flac.h5', 'r') #reading the hdf5 file
dataset_names_list=[]
q.visit(dataset_names_list.append)#creating a list of datasets in the hdf5 file
ten_min_df= pd.DataFrame()
for i in dataset_names_list:
     x=q[i][:]
     if x.shape[1]>1:
         col1=[i + str(num) for num in range(0, x.shape[1])]
         temp=pd.DataFrame(data=x, columns=col1)
         ten_min_df=ten_min_df.append(temp)
     else:
         col2=[i]
         temp=pd.DataFrame(data=x, columns=col2)
         ten_min_df=ten_min_df.append(temp)

1 个答案:

答案 0 :(得分:1)

我认为您需要<div id="target"><span>span_text</span>div_text</div> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>的列表,然后将numpy.concatenatearray构造函数一起使用:

DataFrame