2024-09-27 23:27:37 发布
网友
我有一个这样的df:
ImageDate Year Month Day 20020506 2002 05 06 20030605 2003 06 05 20040201 2002 02 01
我想添加一个新的列,将日期转换为儒略日期。我很确定我需要模块datetime来完成这项工作,但是我查阅了文档,没有发现任何对我来说显而易见的关于如何做到这一点的东西。在
datetime
以下是我发布的here原始转换算法的python实现:
def gregorian_to_julian(year, month, day): i = int((month - 14) / 12) jd = day - 32075 jd += int((1461 * (year + 4800 + i)) / 4) jd += int((367 * (month - 2 - (12 * i))) / 12) jd -= int((3 * int((year + 4900 + i) / 100)) / 4) return jd
例如:
或者,您可以使用内置的date对象从Gregorian date获取Julian日期,方法是将Gregorian absolute date 0的Julian date(1721425)添加到ordinal date as publishedhere:
第二种解决方案更简单,速度更快。在
去看看这个库:https://pypi.python.org/pypi/jdcal
然后做一些类似的事情:
from jdcal import gcal2jd, jd2gcalgcal2jd(2000,1,1)'
from jdcal import gcal2jd, jd2gcal
gcal2jd(2000,1,1)'
第一个解决方案
以下是我发布的here原始转换算法的python实现:
例如:
^{pr2}$第二种解决方案
或者,您可以使用内置的date对象从Gregorian date获取Julian日期,方法是将Gregorian absolute date 0的Julian date(1721425)添加到ordinal date as publishedhere:
^{3}$第二种解决方案更简单,速度更快。在
去看看这个库:https://pypi.python.org/pypi/jdcal
然后做一些类似的事情:
相关问题 更多 >
编程相关推荐