无法对table.group.Group进行多重处理

时间:2019-02-19 07:21:49

标签: python-3.x multiprocessing hdf5 numpy-ndarray

我计划对表的table.group.Group类型应用一些步骤。我的对象(表)看起来像

table = h5file.root[varname]
for i in h5file:
    print(i)
Output >>
/ (RootGroup) ''
/emp_id (Group) ''
/emp_id/frame_0000000000 (CArray(60, 568)) ''
/emp_id/frame_0000000001 (CArray(60, 568)) ''
/emp_id/frame_0000000002 (CArray(60, 568)) ''
/emp_id/frame_0000000003 (CArray(60, 568)) ''
/emp_id/frame_0000000004 (CArray(60, 568)) ''
/emp_id/frame_0000000005 (CArray(60, 568)) ''
/emp_id/frame_0000000006 (CArray(60, 568))...so on ''

我正尝试在table上进行以下多重处理:

from multiprocessing import Pool
import os
import numpy as np

def proc_data_frame(frame_data):
    print(frame_data.shape)
    frame_data_transposed = np.transpose(frame_data)
    print(frame_data_transposed.shape)

pool = Pool(os.cpu_count())#Pool()
pool.map(proc_data_frame, table)

但是我遇到了错误:

TypeError: self.dims,self.dims_chunk,self.maxdims cannot be converted to a Python object for pickling

我试图从Carray转换为numpy,但没有成功。感谢帮助。预先感谢。

0 个答案:

没有答案