Source code for biosiglive.streaming.utils

import numpy as np


[docs] def dic_merger(dic_to_merge, new_dic=None): """Merge two dictionaries. Parameters ---------- dic_to_merge : dict Dictionary to merge. new_dic : dict Dictionary to merge with. Returns ------- dict Merged dictionary. """ if not new_dic: new_dic = dic_to_merge else: for key in dic_to_merge.keys(): if isinstance(dic_to_merge[key], dict): new_dic[key] = dic_merger(dic_to_merge[key], new_dic[key]) elif isinstance(dic_to_merge[key], list): new_dic[key] = dic_to_merge[key] + new_dic[key] elif isinstance(dic_to_merge[key], np.ndarray): new_dic[key] = np.append(dic_to_merge[key], new_dic[key], axis=0) elif isinstance(dic_to_merge[key], int): if isinstance(new_dic[key], int): new_dic[key] = [new_dic[key]] new_dic[key] = [new_dic[key]] + [dic_to_merge[key]] return new_dic