test_pandas.py 文件源码

python
阅读 40 收藏 0 点赞 0 评论 0

项目:PyDataLondon29-EmbarrassinglyParallelDAWithAWSLambda 作者: SignalMedia 项目源码 文件源码
def test_timedelta(self):
        converter = lambda x: pd.to_timedelta(x, unit='ms')

        s = Series([timedelta(23), timedelta(seconds=5)])
        self.assertEqual(s.dtype, 'timedelta64[ns]')
        # index will be float dtype
        assert_series_equal(s, pd.read_json(s.to_json(), typ='series')
                            .apply(converter),
                            check_index_type=False)

        s = Series([timedelta(23), timedelta(seconds=5)],
                   index=pd.Index([0, 1], dtype=float))
        self.assertEqual(s.dtype, 'timedelta64[ns]')
        assert_series_equal(s, pd.read_json(
            s.to_json(), typ='series').apply(converter))

        frame = DataFrame([timedelta(23), timedelta(seconds=5)])
        self.assertEqual(frame[0].dtype, 'timedelta64[ns]')
        assert_frame_equal(frame, pd.read_json(frame.to_json())
                           .apply(converter),
                           check_index_type=False,
                           check_column_type=False)

        frame = DataFrame({'a': [timedelta(days=23), timedelta(seconds=5)],
                           'b': [1, 2],
                           'c': pd.date_range(start='20130101', periods=2)})

        result = pd.read_json(frame.to_json(date_unit='ns'))
        result['a'] = pd.to_timedelta(result.a, unit='ns')
        result['c'] = pd.to_datetime(result.c)
        assert_frame_equal(frame, result, check_index_type=False)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号