Source code for improc.io.data

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Date    : 2019-07-14 16:14:12
# @Author  : Yan Liu & Zhi Liu (zhiliu.mind@gmail.com)
# @Link    : http://iridescent.ink
# @Version : $1.0$

import os
import h5py
import sys
import pickle as pkl
import scipy.io as scio
import numpy as np


[docs]def save(data, file): """save data to file save data to '.pkl' or '.mat' file Parameters ---------- data : {dict} data dict to be saved file : {string} specify where to save """ ext = os.path.splitext(file)[1] if ext == '.pkl': f = open(file, 'wb') pkl.dump(data, f, 0) f.close() elif ext == '.mat': scio.savemat(file, {'data': data}) return 0
[docs]def load(file): """load data from file load data from '.pkl' or '.mat' file Parameters ---------- file : {string} specify which file to load """ filename, EXT = os.path.splitext(file) if EXT == '.pkl': f = open(file, 'rb') # for python2 if sys.version_info < (3, 1): data = pkl.load(f) # for python3 else: data = pkl.load(f, encoding='latin1') f.close() elif EXT == '.mat': data = scio.loadmat(file, struct_as_record=True) return data