Hi @gmbe,
To achieve a dataset with columns and rows the way it is described, you need to play with compound data types.
In HDFql, a high-level (declarative) language to manage HDF5 files, this can easily be achieved as follows in C (in addition to C, HDFql supports C++, C#, Java, Python, R and Fortran):
// create an HDF5 file named 'test.h5' and use (i.e. open) it
hdfql_execute("CREATE AND USE FILE test.h5");
// create a compound dataset named 'dset' with three members ('col_1', 'col_2' and 'col_3') of type double with five rows
hdfql_execute("CREATE DATASET dset AS COMPOUND(col_1 AS DOUBLE, col_2 AS DOUBLE, col_3 AS DOUBLE)(5)");
Hope it helps!