From f844d87df713267ea360bcb2d745dae328240f5b Mon Sep 17 00:00:00 2001
From: "Olivier J.N. Bertrand" <olivier.bertrand@uni-bielefeld.de>
Date: Wed, 15 Aug 2018 13:35:28 +0200
Subject: [PATCH] Fix to_hdf saving and loading in Trajectory

---
 navipy/trajectories/__init__.py | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/navipy/trajectories/__init__.py b/navipy/trajectories/__init__.py
index 217636e..d538e65 100644
--- a/navipy/trajectories/__init__.py
+++ b/navipy/trajectories/__init__.py
@@ -233,6 +233,7 @@ class Trajectory(pd.DataFrame):
     def q_3(self, q_3):
         self.__set_q_i(3, q_3)
 
+    # overload of save/load function
     def read_csv(self, filename, sep=',', header=[0, 1], index_col=0):
         """ Load from a hdf file
         """
@@ -242,8 +243,19 @@ class Trajectory(pd.DataFrame):
         return self
 
     def read_hdf(self, filename):
-        raise NameError('Not implemented')
+        df = pd.read_hdf(filename)
+        self.from_dataframe(df)
+        return self
+
+    def to_hdf(self, filename):
+        df = pd.DataFrame(self)
+        df.to_hdf(filename, key='posorients')
+
+    def to_csv(self, filename):
+        df = pd.DataFrame(self)
+        df.to_csv(filename)
 
+    # initialisation from variables
     def from_array(self, nparray, rotconv):
         """ Assign trajectory from a numpy array
             N x 6 (rotconv = Euler angles)
-- 
GitLab