def GetDataArray(self): data = np.array(map(lambda x:np.array(x.data),self.columns)) arr = None if data.shape[0]==2: # 1D arr = DataArray(shape=[data.shape[1]],name=self.name) arr.name = self.name arr.coords[0] = data[0,:] arr.data = data[1,:] elif data.shape[0]==3: # 2D cx = np.unique(data[0,:]) cy = np.unique(data[1,:]) arr = DataArray(shape=[len(cx),len(cy)],name=self.name) arr.coords[0] = cx arr.coords[1] = cy arr.data = data[2,:].reshape((len(cx),len(cy))) return arr