Implemented dataset append method in HDF5DatOpsAPI
This commit is contained in:
@ -3,6 +3,7 @@ import pandas as pd
|
|||||||
import numpy as np
|
import numpy as np
|
||||||
import os
|
import os
|
||||||
import src.hdf5_vis as hdf5_vis
|
import src.hdf5_vis as hdf5_vis
|
||||||
|
import src.g5505_utils as utils
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
class HDF5DataOpsManager():
|
class HDF5DataOpsManager():
|
||||||
@ -49,7 +50,7 @@ class HDF5DataOpsManager():
|
|||||||
if self.file_obj is None:
|
if self.file_obj is None:
|
||||||
self.open_file()
|
self.open_file()
|
||||||
|
|
||||||
dataset_obj = self.file_obj()[dataset_name]
|
dataset_obj = self.file_obj[dataset_name]
|
||||||
# Read dataset content from dataset obj
|
# Read dataset content from dataset obj
|
||||||
data = dataset_obj[...]
|
data = dataset_obj[...]
|
||||||
# The above statement can be understood as follows:
|
# The above statement can be understood as follows:
|
||||||
@ -62,6 +63,20 @@ class HDF5DataOpsManager():
|
|||||||
except ValueError as exp:
|
except ValueError as exp:
|
||||||
logging.error(f"Failed to convert dataset '{dataset_name}' to DataFrame: {exp}")
|
logging.error(f"Failed to convert dataset '{dataset_name}' to DataFrame: {exp}")
|
||||||
return data # 'data' is a NumPy array here
|
return data # 'data' is a NumPy array here
|
||||||
|
|
||||||
|
def append_dataset(self,dataset_dict, group_name):
|
||||||
|
|
||||||
|
# Parse value into HDF5 admissible type
|
||||||
|
for key in dataset_dict['attributes'].keys():
|
||||||
|
value = dataset_dict['attributes'][key]
|
||||||
|
dataset_dict['attributes'][key] = utils.parse_attribute(value)
|
||||||
|
|
||||||
|
#name = dataset_dict['name']
|
||||||
|
#data = dataset_dict['data']
|
||||||
|
#dtype = dataset_dict['dtype']
|
||||||
|
|
||||||
|
self.file_obj[group_name].create_dataset(dataset_dict['name'], data=dataset_dict['data'])
|
||||||
|
self.file_obj[group_name][dataset_dict['name']].attrs.update(dataset_dict['attributes'])
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user