我收到了一些奇怪格式的日期,我无法将它们读成datetime pandas格式。
例如:736698.0
,应该是'2017-01-04T00:00:00.000000000'
。因此,原始格式似乎是从1/1/1BC开始的天数(作为零年的第一天,但没有这样的年份,所以它是-1年)。
我试过使用pandas.to_datetime(736698.0, unit='D', origin=datetime.datetime(1/1/0))
和其他组合,但我什么都没有得到。
我收到了一些奇怪格式的日期,我无法将它们读成datetime pandas格式。
例如:736698.0
,应该是'2017-01-04T00:00:00.000000000'
。因此,原始格式似乎是从1/1/1BC开始的天数(作为零年的第一天,但没有这样的年份,所以它是-1年)。
我试过使用pandas.to_datetime(736698.0, unit='D', origin=datetime.datetime(1/1/0))
和其他组合,但我什么都没有得到。
3条答案
按热度按时间hsvhsicv1#
使用
numpy
来执行此操作,因为它支持“BC”年份:示例:
输出:
kx7yvsdv2#
如果你想要一个向量方法,并期望最后的日期是最近的,你可以减去一个有效的epoch:
输出:
使用的输入:
nimxete23#
您可以使用以下命令将给定的浮点数转换为日期时间。由于我们不能设置
year=0
,我们必须从最终结果中减去它: