Pandas has a nice interface that facilitates storing things like Dataframes and Series in an HDF5:
random_matrix = np.random.random_integers(0,10, m_size)
my_da
Here's the example from the cookbook: http://pandas.pydata.org/pandas-docs/stable/cookbook.html#hdfstore
You can store arbitrary objects as the attributes of a node. I belive there is a 64kb limit (I think its total attribute data for that node). The objects are pickled
In [1]: df = DataFrame(np.random.randn(8,3))
In [2]: store = HDFStore('test.h5')
In [3]: store['df'] = df
# you can store an arbitrary python object via pickle
In [4]: store.get_storer('df').attrs.my_attribute = dict(A = 10)
In [5]: store.get_storer('df').attrs.my_attribute
{'A': 10}