def test_series(self): pivot = pd.pivot_table(self.df, rows='month', cols='gender', values='price') [man, woman] = get_series(pivot, []) self.assertEquals('man', man['name']) self.assertEquals([(unix_time_millis(date(2010, 1, 1)), 1.0), (unix_time_millis(date(2010, 2, 1)), 1.0)], man['data']) self.assertEquals('woman', woman['name']) self.assertEquals([(unix_time_millis(date(2010, 1, 1)), 1.0), (unix_time_millis(date(2010, 2, 1)), 0)], woman['data'])
def _serialize(serie): ret = [] for x, y in zip(serie.index, serie): if isinstance(x, (date, datetime)): x = unix_time_millis(x) if pd.np.isnan(y): y = 0 if isinstance(x, basestring): ret.append(y) else: ret.append((x, y)) return ret