Python-在等待datetime.datime

时间:2019-06-14 16:42:23

标签: python pandas datetime python-datetime

我从社区中采用以下方法将日期时间转换为朱利安:

def get_julian_datetime(date):
    if not isinstance(date, dt.datetime):
        raise TypeError('Invalid type for parameter "date" - expecting datetime')
    elif date.year < 1801 or date.year > 2099:
        raise ValueError('Datetime must be between year 1801 and 2099')

    # Perform the calculation
    julian_datetime = 367 * date.year - int((7 * (date.year + int((date.month + 9) / 12.0))) / 4.0) + int(
        (275 * date.month) / 9.0) + date.day + 1721013.5 + (
                              date.hour + date.minute / 60.0 + date.second / math.pow(60,
                                                                                      2)) / 24.0 - 0.5 * math.copysign(
        1, 100 * date.year + date.month - 190002.5) + 0.5

    return julian_datetime

我正在尝试将数据帧中的日期时间转换为朱利安。但是,由于我传递了“ pandas.core.series.Series”类型,因此它返回了第一个异常。

我正在尝试的代码如下:

df[new_datetime] = get_julian_datetime(df['old_datetime'])

它正在返回这个(可以预期的):

TypeError: Invalid type for parameter "date" - expecting datetime

如何根据上面创建的方法转换为Julian格式的新列?

谢谢!

0 个答案:

没有答案