diff --git a/Analysis/mat_to_shapefiles.py b/Analysis/mat_to_shapefiles.py
index 4ba5d6bb1b91c7f2cba3b0cbf97c3b20c3aebbb5..80e8d9247e77c0e2c6011ca7f3a798764011508d 100755
--- a/Analysis/mat_to_shapefiles.py
+++ b/Analysis/mat_to_shapefiles.py
@@ -10,7 +10,7 @@ import shapefile
 import numpy as np
 from os import path
 
-def write(matlab_data, eddy_orientation, SHP_triplet):
+def write(matlab_data, eddy_orientation, SHP_triplet, date_index):
     """matlab_data is a dictionary. matlab_data[eddy_orientation] is a
     numpy.ndarray with shape (number of eddies, 21).
 
@@ -23,7 +23,7 @@ def write(matlab_data, eddy_orientation, SHP_triplet):
       shapefile.Writer(path.join(SHP_triplet, "max_speed_contour"),
                        shapeType = shapefile.POLYGON) as w_max_speed:
         w_extr.field("ssh", "N", 13, 6)
-        w_extr.field("date_index", "N", 6)
+        w_extr.field("date_index", "N", 5)
         w_extr.field("eddy_index", "N", 5)
         w_extr.field("interpolat", "N", 1)
         w_extr.field("cyclone", "N", 1)
@@ -32,13 +32,13 @@ def write(matlab_data, eddy_orientation, SHP_triplet):
 
         w_outer.field("r_eq_area", "N", 10, 4)
         w_outer.field("ssh", "N", 13, 6)
-        w_outer.field("date_index", "N", 6)
+        w_outer.field("date_index", "N", 5)
         w_outer.field("eddy_index", "N", 5)
         w_outer.field("radius4", "N", 2)
 
         w_max_speed.field("r_eq_area", "N", 10, 4)
         w_max_speed.field("ssh", "N", 13, 6)
-        w_max_speed.field("date_index", "N", 6)
+        w_max_speed.field("date_index", "N", 5)
         w_max_speed.field("eddy_index", "N", 5)
 
         eddy_index = 0
@@ -58,18 +58,18 @@ def write(matlab_data, eddy_orientation, SHP_triplet):
             j = np.argwhere(matlab_data["Y"] == eddy[1]).item()
             speed = 1e4 if np.isnan(eddy[12]) else eddy[12]
             w_extr.record(ssh = matlab_data["ADT"][i, j],
-                          date_index = matlab_data["date_num"],
-                          eddy_index = eddy_index, interpolat = 0,
-                          cyclone = cyclone, valid = 1, speed = speed)
+                          date_index = date_index, eddy_index = eddy_index,
+                          interpolat = 0, cyclone = cyclone, valid = 1,
+                          speed = speed)
 
             if cyclone:
                 ssh = matlab_data["ADT"][i, j] + eddy[7]
             else:
                 ssh =  matlab_data["ADT"][i, j] - eddy[7]
 
-            w_outer.record(r_eq_area = eddy[6], ssh = ssh,
-                           date_index = matlab_data["date_num"],
-                           eddy_index = eddy_index, radius4 = - 1)
+            w_outer.record(r_eq_area = eddy[6], ssh = ssh, 
+                           date_index = date_index, eddy_index = eddy_index,
+                           radius4 = - 1)
             polyline = np.stack((eddy[4], eddy[5]), axis = 1)
             w_outer.poly([polyline])
 
@@ -78,17 +78,20 @@ def write(matlab_data, eddy_orientation, SHP_triplet):
             else:
                 ssh =  matlab_data["ADT"][i, j] - eddy[11]
 
-            w_max_speed.record(r_eq_area = eddy[10], ssh = ssh,
-                               date_index = matlab_data["date_num"], 
-                               eddy_index = eddy_index)
+            w_max_speed.record(r_eq_area = eddy[10], ssh = ssh, 
+                               date_index = date_index, eddy_index = eddy_index)
             polyline = np.stack((eddy[8], eddy[9]), axis = 1)
             w_max_speed.poly([polyline])
 
 if __name__ == "__main__":
     import sys
     import scipy.io as sio
+    import datetime
     
     if len(sys.argv) != 2: sys.exit("Required argument: .mat file")
     matlab_data = sio.loadmat(sys.argv[1], squeeze_me = True)
-    write(matlab_data, "Anticyclonic_Cell", "Snapshot_anti")
-    write(matlab_data, "Cyclonic_Cell", "Snapshot_cyclo")
+    date_index = datetime.date.fromordinal(matlab_data["date_num"] - 366) \
+        - datetime.date(1950, 1, 1)
+    date_index = date_index.days
+    write(matlab_data, "Anticyclonic_Cell", "Snapshot_anti", date_index)
+    write(matlab_data, "Cyclonic_Cell", "Snapshot_cyclo", date_index)